Imprimir una matriz con Java

28/Dic/2012 Java , , , , 15 Comentarios
Programación en Java

En uno de los comentarios al artículo que explica cómo Cargar una matriz por teclado en Java nos preguntaban sobre cómo podíamos imprimir una matriz con Java.

Y es que en el artículo sobre Cargar una matriz por teclado en Java lo que hacíamos era mostrar la matriz por posiciones. Ahora la idea es imprimirla de una forma más matemática. Algo parecido a:

Así que vamos con la tarea de imprimir una matriz con Java. Lo primero será cargar la matriz. No nos vamos a complicar mucho y lo que vamos a hacer es cargarla directamente.

int matriz[][] = new int[3][3];		
matriz[0][0] = 2;
matriz[0][1] = 4;
matriz[0][2] = 4;
matriz[1][0] = 6;
matriz[1][1] = 6;
matriz[1][2] = 9;
matriz[2][0] = 8;
matriz[2][1] = 10;
matriz[2][2] = 1;

Recuerda que las matrices en Java son arrays bidimensionales. Es por ello que la definición tienen dos dimensiones.

Ahora pasaremos a imprimirla. Para ello utilizamos dos estructuras for anidadas. La primera irá incrementando las filas, es decir, el valor de la X y la segunda incrementará por cada fila el valor de las columnas, es decir, la Y.

for (int x=0; x < matriz.length; x++) {
  for (int y=0; y < matriz[x].length; y++) { ... }
}

Vemos que los bucles for van desde la posición 0 hasta el tamaño que tenga la matriz Java. En el caso de las filas será el tamaño general

matriz.length;

Y en el caso de cada fila fijamos la dimensión x.

matriz[x].length;

Ahora, por cada fila vamos a imprimir los elementos, pero sin salto de línea. Es decir utilizando un System.out.print:

for (int y=0; y < matriz[x].length; y++) {
    System.out.print (matriz[x][y]);
    if (y!=matriz[x].length-1) System.out.print("\t");
}

Además hemos añadido, una tabulación, es decir, una separación entre cada posición. La tabulación la aplicaremos detrás de cada número, excepto del último. Es por ello que hacemos la validación:

if (y!=matriz[x].length-1) System.out.print("\t");

Recuerda que las tabulaciones se consiguen mediante el carácter escapado \t

Una vez impresa cada fila, ahora es cuando hay que dar un salto de línea mediante un System.out.println

for (int x=0; x < matriz.length; x++) {
  for (int y=0; y < matriz[x].length; y++) {
    System.out.print (matriz[x][y]);
    if (y!=matriz[x].length-1) System.out.print("\t");
  }
}

Ya solo nos quedará meter algún decorador adicional, al gusto, y el código final Java que nos imprimirá la matriz quedará de la siguiente forma:

for (int x=0; x < matriz.length; x++) {
  System.out.print("|");
  for (int y=0; y < matriz[x].length; y++) {
    System.out.print (matriz[x][y]);
    if (y!=matriz[x].length-1) System.out.print("\t");
  }
  System.out.println("|");
}

Vídeos sobre Java


15 comentarios en “Imprimir una matriz con Java”

Víctor Cuervo

Lisandra Sicilia Hernández

Cómo podría hacer el rastreo de esa matriz?

Víctor Cuervo

Daniela

Hola necesitó ayuda

Captura un número del 1 al 4 para elegir una opción:

 

1)NUMERO POSITIVO

2) TABLA DE NUMEROS Y SUS CUBOS,

3)TABLA DE MULTIPLICAR DESCENDENTE

4) ESTACIONES DEL AÑO

 

Si elige el numero 1, deberá capturar desde teclado un numero e indicar si es

positivo o negativo

Si elige el numero 2, deberá capturar un numero e imprimir la tabla del

numero 1 hasta n con su respectivo cubo

Si elige el numero 3, deberá capturar 1 NUMERO e imprimir su tabla de

multiplicar del 100 al 1 con decremento de 10 en 10

Si elige el numero 4,debera capturar un numero en el rango del 1 al 12 y en

base a dicho numero indicar a que estación del año corresponde: (12,1,2

=invierno, 3,4,5=primavera, 6,7,8=verano, 9,10,11=otoño)si captura un

numero mayor al 12, imprimir error fuera de rango es un numero del 1 al 12

Al finalizar la ejecución de alguna de las opciones, deberá o no regresar

al menú, según lo desee el usuario.

Víctor Cuervo

Marta

Hola, buen día , necesito ayuda para saber como recorrer la matriz, e indicar en pantalla cuantas filas inician (en el primer campo) con el número 5. Si no hay ninguna, debe indicar cero.

Víctor Cuervo

eduard

conseguiste solucion yo tampoco se como

Víctor Cuervo

felipe mendoza

hola, tengo que hacer un programa donde el usuario ingresar el tamaño de la matriz, y solo muestra los bordes de la matriz y dichos números del borde les saca el promedio. adicional presentar los números impares que conforman el borde. alguien que me pueda ayudar?

Víctor Cuervo

jorge

Hola Necesito imprimir una matríz de 2 dimensiones de 4×4 con los números pares. ¿Alguien por aquí me puede ayudar?

Víctor Cuervo

Víctor Cuervo

El código de arriba te imprime la matriz. ¿Qué quieres decir con los números pares?

Saludos.

Víctor Cuervo

Oskr

no comprendo porque me pasa esto, termine de programarlo pero a la hora de que me muestre los resultados en forma de matriz, me los arroja de una sola columna, como si hubiese introducido los numeros por separado, a que se debe esto, ya confirme muchas veces y el codigo esta bien, alguen que me pueda ayudar

Víctor Cuervo

francisco Chavez

Alguien sabe como hacer esto mismo pero con jtextfield y botones?

Víctor Cuervo

Allan

Estimados como puedo imprimir títulos en las filas y columnas de una matriz en java.

Gracias por su ayuda.

Víctor Cuervo

ruben

hola necesito ayuda con un programa:
es de java y me pide crear una clase en la cual el metodo datos cree un ciclo de meses y resiba la produccion de cada uno ejemplo
1 20
2 15
3 19
.
.
.
.
12 58

y despues entyre estos datos cuando yo le pida que me arroje el menor y mayor

Víctor Cuervo

Alberto

Hola que tal amigo necesito de tu ayuda he buscado en varios blgs pero no he encontrado uno chido como este amm… estoy haciendo el metodo russell en java no se si conoces el metodo es de investigacion de operaciones.
Hice la matriz en donde el usuario ingresa las filas y columnas pero no se como hacer las operaciones que siguen.
1.-Debe de sacar el dato mayor de la fila (+)
2.-Tambien el dato mayor de la columna (+)
3.-debe sacar el dato del indice en donde se intersecta la fila y la columna (-)
despues suma los 2 primeros y al resultado de eso le resta el tercero por eso les puse el signo de (+) a los que se suman y mnos(-) al que se debe restar
si quieres el codigo te lo envio para que veas que falta..
Gracias

Víctor Cuervo

Osvaldo

Es bien sencillo, yo lo puedo resolver, aunque creo que este post es de hace algún tiempo jeje

Víctor Cuervo

Víctor Cuervo

@Andres, Me alegro mucho que te haya servido. :-D

Víctor Cuervo

Andres

Muchas gracias, me sirvió mucho

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.