Matriz 1: Mi primera matriz

 Este será un programa sencillo y práctico para el entendimiento del control de una matriz, el cual el usuario dirá de que tamaño quiere la matriz (m x n) y le asignaremos datos a cada posición de la matriz.

1.- Creando la matriz

 Como se vio en la introducción a las matrices hay 3 pasos para el control de una matriz, declararla, crearla e iniciarla, pero como no queremos una matriz ya definida por el usuario necesitamos primero preguntar de que tamaño quiere que sea la matriz, para ello pedimos dos números al usuario, las filas y las columnas.

int filas=Integer.parseInt(JOptionPane.showInputDialog("Digita las filas de la matriz"));
int columnas=Integer.parseInt(JOptionPane.showInputDialog("Digita las columnas de la matriz"));

Una vez hecho esto, podemos crear la matriz, en esta ocasión crearemos una matriz para guardar números enteros.

 

int matriz[][]=new int[filas][columnas];

 

Como podemos observar pasamos como índices de tamaño las variables m y n.

 

 

Ya esta declarada, creada e inicializada por defecto nuestra matriz, ahora procedemos a ingresarle datos por cada posición existente en nuestra matriz, la forma más usada para meterle datos es mediante un ciclos for.

//Para escribir datos en una matriz
for(int i=0;i<filas;i++){
        for(int j=0;j<columnas;j++){
                matriz[i][j]=Integer.parseInt(JOptionPane.showInputDialog("Digita un número para la posición: a["+i+"]["+j+"]"));
        }
}

Esta vez se utilizan dos ciclos for, el primero indica el numero de filas y el segundo el numero de columnas, esto es, se recorre el segundo ciclo for tantas veces como haya el número de filas, puesto que en cada fila hay “n” cantidad de columnas.

 

 Dicho esto comprobaremos que en realidad se guardaron los datos en nuestra matriz, utilizaremos los ciclos de la misma forma en que guardamos datos, la diferencia es que, ahora en lugar de escribir datos en la matriz los vamos a leer.

//Para leer datos en una matriz
for(int i=0;i<filas;i++){
        for(int j=0;j<columnas;j++){
                System.out.print(matriz[i][j]+" ");
        }
        System.out.println(); //un salto de linea
}

Los mostramos en consola para evitar una ventana cada vez que se muestre un dato.

 

Y con esto finaliza nuestro programa.

 

 

Capturas del programa en ejecución

Código completo utilizado

package pqtMatrices;

import javax.swing.JOptionPane;

public class MatrizUno {

        public static void main(String args[]){
                int filas=Integer.parseInt(JOptionPane.showInputDialog("Digita las filas de la matriz"));
                int columnas=Integer.parseInt(JOptionPane.showInputDialog("Digita las columnas de la matriz"));
                int matriz[][]=new int[filas][columnas];
                //Para escribir datos en una matriz
                for(int i=0;i<filas;i++){
                        for(int j=0;j<columnas;j++){
                                matriz[i][j]=Integer.parseInt(JOptionPane.showInputDialog("Digita un número para la posición: a["+i+"]["+j+"]"));                               
                        }
                }
                
                //Para leer datos en una matriz
                for(int i=0;i<filas;i++){
                        for(int j=0;j<columnas;j++){
                                System.out.print(matriz[i][j]+" ");
                        }
                        System.out.println(); //un salto de linea
                }
        }

}