Matriz com numeros aleatórios [RESOLVIDO]

6 respostas
V

Pessoal usei esse esquema para fazer com vetor ele me imprimia um vetor com de 10 posições com numeros aleatórios queria saber o pq que usando a msma lógica com a matriz não rodou... vou manda o código.

int [][]m = new int [10][3]; 
			   
			  for(int i = 0; i < 10 ; i++){
			   for(int k = 0; k < 3 ; i++){
			    m[i][k] = (int)(Math.random()*10);
			   }
			  
			  }
			  for(int i = 0; i < 10 ; i++){
			   for(int k = 0; k < 3 ; i++){
			    System.out.println (m[i][k]);
			   }
			  
			  }
			 }

6 Respostas

P

não se preucupe, esse é um erro bem comum. As vezes acontece.

for(int k = 0; k < 3 ; i++){

o contador é "k", só que é o "i" que recebe o incremento. Isso deve gerar um ArrayIndexOutOfBounds.
Aproveitando, é muito melhor usar a classe Random, do que usar o math.random();

import java.util.Random;
(...)
Random generator = new Random();
m[i][k] = generator.nextInt( 10 );
(...)

Qualque dúvida posta aí.
[]`s

P

Seu código:

int [][]m = new int [10][3];   
               
              for(int i = 0; i < 10 ; i++){  
               for(int k = 0; k < 3 ; k++){  
                m[i][k] = (int)(Math.random()*10);  
               }  
                
              }  


              for(int i = 0; i < 10 ; i++){  
              for(int k = 0; k < 3 ; k++){  
               System.out.println (m[i][k]);  
              }               
             }  
            }
V

Muito obrigado consegui fazer rodar das duas maneiras e vi tbem qual era meu erro…

Thank’s

E

Depois que seu problema tiver resolvido, vá no primeiro post, editar o Título adicionando a tag [RESOLVIDO] no final do Título .

V
VictorFarion:
Pessoal usei esse esquema para fazer com vetor ele me imprimia um vetor com de 10 posições com numeros aleatórios queria saber o pq que usando a msma lógica com a matriz não rodou... vou manda o código.
int [][]m = new int [10][3]; 
			   
			  for(int i = 0; i < 10 ; i++){
			   for(int k = 0; k < 3 ; i++){
			    m[i][k] = (int)(Math.random()*10);
			   }
			  
			  }
			  for(int i = 0; i < 10 ; i++){
			   for(int k = 0; k < 3 ; i++){
			    System.out.println (m[i][k]);
			   }
			  
			  }
			 }
L
Boa noite pessoal

Preciso imprimir o espelho de uma matriz que não seja do tipo quadrada 3x 3 ou 4 x 4, quando imprimo assim da certo se eu imprimir 2 , x 3 ou 3 x 4, não da certo  Alguém poderia me ajudar Segue código.

import java.util.Arrays;

import java.util.Random;

import java.util.Scanner;

public class Matriz_Espelho {

public static void main(String[] args) {
int linhasMatrizA;

int colunasMatrizA;

// int linhasMatrizB;

// int colunasMatrizB;
int [][] matrizA;

// int [][] matrizB;

Scanner entrada = new Scanner(System.in);

System.out.println(Insira o numero de LINHAS da matriz A:);

linhasMatrizA = entrada.nextInt();

System.out.println(“Insira o numero de COLUNAS da matriz A:”);
colunasMatrizA = entrada.nextInt();

matrizA = new int[linhasMatrizA][colunasMatrizA];
// matrizB = new int[linhasMatrizB][colunasMatrizB];

System.out.println(“Matriz A e [” + linhasMatrizA + “]” + “[” + colunasMatrizA + “]”);

System.out.println(Preenchendo Matriz A);

for(int i = 0; i < matrizA.length; i++){

for (int j = 0; j < matrizA[0].length; j++){

System.out.println(Digite o valor para a posicao [” + i + “] + [” + j + “] da matriz A );

matrizA[i][j] = entrada.nextInt();

}

}

System.out.println();

System.out.println("Matriz Pincipal: ");
for (int i = 0; i < matrizA.length; i++) {

for (int j = 0; j < matrizA.length; j++) {

System.out.printf(" %d ", matrizA[i][j]);

}

System.out.println();

}

System.out.println();
System.out.println("Matriz Diagonal: ");

for (int i = 0; i < matrizA.length; i++) {

for (int j = 0; j < matrizA.length; j++) {

System.out.printf(" %d ", matrizA[j][i]);

}

System.out.println();

}

}

}

Criado 21 de setembro de 2009
Ultima resposta 5 de jun. de 2015
Respostas 6
Participantes 5