Dogui 0 Denunciar post Postado Junho 1, 2010 olá eu estou tentando imprimir uma matriz invertida. em vez de imprimir linhas, imprimir por colunas. public class Matriz { public static void main(String[] args) { int mat[][]= {{1,2,3,4,9},{5,6,7,8}}; for (int coluna=0; coluna < mat[0].length ; coluna++){ for (int linha=0; linha<mat.length; linha++){ System.out.print(mat[linha][coluna]+ " "); } System.out.println(); } } } como posso faze isso de uma maneira diferente substituindo o mat[0].length para que quando ele for imprimir o 5º valor da 2ª linha ele ve q não tem e não exibe erro. Compartilhar este post Link para o post Compartilhar em outros sites
Giovanni Ritchie 0 Denunciar post Postado Junho 16, 2010 package core.java2.volume1.main; /** * Impressão de matriz na ordem invertida * @author Giovanni Ritchie * * */ public class Main { public static void main(String[] args) { int matriz[][] = { { 1, 2, 3, 4, 9 }, { 5, 6, 7, 8 } }; // procura o array com mais colunas int maior = matriz[0].length; for (int i = 1; i < matriz.length; ++i) { if (matriz[i].length > maior) { maior = matriz[i].length; } } for (int i = 0; i < maior; ++i) { for (int j = 0; j < matriz.length; ++j) { try { System.out.println(matriz[j][i]); } catch (ArrayIndexOutOfBoundsException e) { // quando não existir elemente nessa coluna // simplesmente ignora a exception } } } } } Abraço! ;) Compartilhar este post Link para o post Compartilhar em outros sites