Imprimir Matriz no formato 3 X 3

3 respostas
R
Salve galera Estou com esse probleminha: gostaria de imprimir assim como uma matriz é.... A A A A A A A A A ... no meu código tá assim:
public class ArreInt{
	public static void main (String args[]){
		int[][] array = new int[3][3];
		//int i = 0;
		//int j = 0;

		//inserir elementos
		array[0][0] = 1;
		array[0][1] = 2;
		array[0][2] = 3;
		array[1][0] = 4;
		array[1][1] = 5;
		array[1][2] = 6;
		array[2][0] = 7;
		array[2][1] = 8;
		array[2][2] = 9;

		System.out.print(array[0][0]);
		System.out.print(array[0][1]);
		System.out.print(array[0][2]);
		System.out.println("");
		System.out.print(array[1][0]);
		System.out.print(array[1][1]);
		System.out.print(array[1][2]);
		System.out.println("");
		System.out.print(array[2][0]);
		System.out.print(array[2][1]);
		System.out.print(array[2][2]);
		System.out.println("");
		System.out.println("");
		System.out.println("");

		//imprindo ao contrario
		for (int i = 0 ;i < array.length; i++){
			for (int j = 0; j < array[i].length; j++){
				System.out.print(array[2-i][2-j]);

			}
		}

		System.out.println("");
		//imprimindo normal
		for (int i = 0 ;i < array.length; i++){
			for (int j = 0; j < array[i].length; j++){
				System.out.print(array[i][j]);

			}
		}
		System.out.println("");


	}
}

Como eu faço pra imprimir dentro do for (desse jeito 3 X 3)? e Mais, e como fazer pra ele imprimir SÓ AS DIAGONAIS (a principal e a secundária) assim:
principal
A 0 0
0 A 0
0 0 A

secundaria
0 0 A
0 A 0
A 0 0

com espaços em branco no lugar de zero.. nao consegui de jeito nenhum... Valeu desde já a força.. eu sei que isso é muito básico... isso que dá programar só no Swing... Valeu

3 Respostas

P

Esse deve ser um exercicio que algum professor seu passou, eu não vou te dar a resposta, pois assim não é legal para aprender, mas vou te dar algumas dicas para te ajudar a construir um raciocínio.

Imprimir dentro do for:
-É bem simples e seu código está quase certo, você deve imprimir uma linha “dar um enter”, imprimir a segunda e assim por diante. O que falta no seu código é justamente “dar o enter”

Diagonal principal
-Os elementos da diagonal principal são aqueles que têm os índices i e j iguais, no seu caso, (0,0), (1,1) e (2,2), então com um if dentro do for você consegue resolver isso.

Tendo essas dicas espero que você consiga resolver, caso não conseguir, pode postar que eu te ajudo

Pedro Hamamoto

R

Esse deve ser um exercicio que algum professor seu passou, eu não vou te dar a resposta, pois assim não é legal para aprender, mas vou te dar algumas dicas para te ajudar a construir um raciocínio.

Imprimir dentro do for:
-É bem simples e seu código está quase certo, você deve imprimir uma linha “dar um enter”, imprimir a segunda e assim por diante. O que falta no seu código é justamente “dar o enter”

Diagonal principal
-Os elementos da diagonal principal são aqueles que têm os índices i e j iguais, no seu caso, (0,0), (1,1) e (2,2), então com um if dentro do for você consegue resolver isso.

Tendo essas dicas espero que você consiga resolver, caso não conseguir, pode postar que eu te ajudo

Pedro Hamamoto


Pedro Hamamoto
na verdade eu não estou mais na faculdade… esqueci mesmo… o fato é que via JOptionPane eu consigo (num JFrame, e essas coisas)… mas é que eu estou aplicando num projeto pra uma aplicação minha mesmo, do meu trabalho…

mas valeu a resposta… mesmo assim ainda não consegui por o “<enter>” a cada tres valores impressos…

P

Ok rickzale

Pode especificar melhor onde vai implementar a matriz?

No seu código só precisa colocar no no for externo

for (int i = 0 ;i < array.length; i++){ for (int j = 0; j < array[i].length; j++){ System.out.print(array[i][j]); } System.out.println(""); // Aqui é o <enter> }

espero ter ajudado xD

Criado 29 de maio de 2012
Ultima resposta 29 de mai. de 2012
Respostas 3
Participantes 2