Está en la página 1de 4

Matrices clásicas en Java-Netbeans

Objetivo:
Reconocer el uso de las matrices partiendo del conocimiento previo de los vectores.
Al finalizar la clase los estudiantes estarán en capacidad de:
Crear subprogramas para esquematizar elementos del mundo real que usen las matrices.
Identificar las acciones que un algoritmo puede realizar mediante el uso de matrices.
Crear subprogramas y codificarlos en el lenguaje seleccionado aplicando el concepto de matrices.

Trabajando con matrices.

Los vectores, las matrices, los cubos ... son estructuras que permiten almacenar bajo una misma
variable muchos valores simultaneamente.
Los vectores tiene un solo índice de forma que el almacenamiento es lineal .

Trabajando con Matrices

Las matrices se conocen como arreglos bidimensionales es decir que se encuentran almacenados
en dos dimensiones, las dimensiones se conocen como filas y columnas, en este caso cada
elemento está determinado por dos índices matriz[fila,columna]
Para declarar un matriz global
static tipo[][] nombreMatriz = new tipo[numerofilas][numerocolumnas];
Ejemplo
int[][] mat = new int[10][20];
int numfilas = mat.length;
int numcolumnas = mat[0].length;
System.out.println(numfilas + " " + numcolumnas);
Para recorrer los elementos de una matriz
Como es un elemento bidimensional, es neceario aplicar dos ciclos anidados para tales efectos así:
for(int fila=0;fila<numfilas;fila++){
for(int columna=0;columna<numcolumnas;columna++){
System.out.println(mat[fila][columna]);
}
}
La matriz ofrece los mismos servicios que un vector, solo que el almacenamiento y recuperación
de elementos necesita dos indices, las filas y las columnas.
Las matrices spn muy utilizadas en ingeniería para dscribir matematicamente procesos. Existen
varias asignaturas dedicadas al tema de matrices por tanto se prestan para aplicar de forma clara
los elementos que la conforman.

EJEMPLOS

/**
* Este es un ejemplo de creación de un array en este caso de dos dimensiones
*/
package ejemplos;

public class matrices {


public static void main( String args[] ) {

// Declaramos un array de dos dimensiones con un tamaño de 3 en la


// Decladramos el array con un tamano de 3 en su primera dimensión
para
// posteriormente declarar la segunda dimensión.
int matriz[][] = new int[3][];
matriz[0] = new int[2];
matriz[1] = new int[3];
matriz[2] = new int[4];

// Ponemos datos en el array


for ( int i=0; i < 3; i++ ) {
for ( int j=0; j < matriz[i].length; j++ )
matriz[i][j] = i * j;
}

// y vemos su contenido, utilizando un bucle for


for ( int i=0; i < 3; i++ ) {
for ( int j=0; j < matriz[i].length; j++ )
System.out.print( matriz[i][j] );
System.out.println();
}

// Intetamos acceder a un elemento que esta fuera de los limites del array
System.out.println( "Elemento fuera de limites del array" );
matriz[4][0] = 7;
// El compilador lanzara una excepción de tipo ArrayIndexOutOfBounds
}
}

Ejercicios.
1. Construir un subprograma que dado el número de filas y columnas para una
matriz de enteros permita llenarla y la retorne llena.

2. Construir un subprograma que dada una matriz, esta la retorne ordenada por
las filas de mayor a menor.

3. Construir un subprograma que reciba una matriz y retorne False o True si


determina que esta es cuadrada o no.

4. Construir un subprograma que dada una matriz y un valor, retorne en que


posición se encuentra el dato en la matriz.
5. Construir un programa que dada una matriz, retorne un vector con todos los
elementos que la conforman.

6. Construir un subprograma que dada una matriz y un vector, retorne la matriz


con el vector agregado como nueva columna, esto solo si el número de elementos
que tiene lo permiten.

7. Construir un subprograma que dada una matriz y un vector, retorne la matriz


con el vector agregado como nueva fila, esto solo si el número de elementos que
tiene lo permiten.

8. Construir un programa que sea capaz de resolver un sudoku dado. la idea es


darle las posiciones iniciales con los valores y el sistema es capaz de resolverlo.

También podría gustarte