Matrices.

 

INTRODUCCION.

Las matrices o arreglos bidimensionales  son muy comunes en la vida diaria:

  • Un tablero de ajedrez.
  • El itinerario de los trenes.
  • Una hoja de calculo.

En el capitulo anterior vimos los arreglos bidimensionales de enteros. Contiene las cifras de las ventanas de computadoras en cada una de cuatro tiendas para cada uno de los siete dias de una semana.

COMO DECLARAR UNA MATRIZ.

Al igual que con otras variables y objetos,para declarar una matriz utilizamos new, ya sea en la parte superior de la clase o de un metodo. El programador asigna un nombre a la matriz, como en el siguiente ejemplo:

int{} {} ventas = new int{4} {7};

double{} {} temps = new double {10} {24};

Al declarar una matriz es necesario indicar cuantas filas y columnas tiene. La matriz ventas tiene cuatro filas: una para cada una de las cuatro tiendas. Tiene siete columnas: una para cada dia de la semana. La matriz contiene cifras de ventas para cada una de las cuatro tiendas durante cada dia de la semana.

INDICES.

Para hacer referencia a un elemento individual en una matriz,un programa debe especificar los valores de dos indices enteros.Por lo tanto,ventas {3} {2} se refiere al elemento de la matriz que se encuentra en la fila 3 y la columna 2, lo cual representa a la tienda numero 3 y el dia numero 2 ejemplo;

ventas{3} {2} = Integer.parseInt(campoTexto.getText());

tableroAjedrez {3} {4} = campoTexto.getText();

EL TAMAÑO DE UNA MATRIZ.

Cuando creamos una matriz de la siguiente forma:

double {} {} info = new double{20}{40};

tiene un tamaño fijo que no se puede modificar, a menosque volvamos a crear la matriz completa mediante new.

Simpre podemos obtener el tamaño de una matriz mediante la propiedad length.Por ejemplo,para la matriz anterior podemos usar:

int tamañoFila = info.length;

PASO DE MATRICES COMO PARAMENTROS.

Por lo tanto,debemos pasar el nombre de la matriz como parametro al metodo; ademas, el resultado que se debe resolver al usario del metodo es un numero: la suma de los valores.

El siguiente es un ejemplo de una llamada al metodo:

int {} {} ventas = new int {24} {12};

int total;

total = sumar(ventas);

USO DE CONSTANTES CON MATRICES.

Cada columna representa un dia. Las filas son los datos para cada tienda. Ahora suponga que,por coincidencia,hay siete tiendas. La mtriz seria: 

int{} {} ventas = new int {7} {7};

Una forma excelente de clarificar el programa seria declarar los valores maximos de los indices como constantes, de la siguiente forma:

final int dias = 7;

final int tiendas = 7;

COMO INICIALIZAR UNA MATRIZ.

Inicializar significa asignar un valor inicial a una variable. Si escribe lo siguiente:

int{} {} tabla = new int{10} {10};

Una forma de inicializar una matriz de manera explicita es utilizar ciclos anidados, como en el siguiente ejemplo:

for (int fila = 0; fila <= 9; fila++) {

for (int col = 0; col<=9; col++) {

tabla{fila}{col} = 99;

}

}

otra forma de inicialiar una matriz es declararla como se muestra a continuacion:

int{} {} matriz =

{{1, 0, 1},

{0, 1, 0}};

FUNDAMENTOS DE PROGRAMACION.

Una matriz en una coleccion de datos con un solo nombre. Una matriz se puede visualizar como una tabla bidimensional, con filas y columnas,Suponga que queremos representar los datos de precipitacion pluvial para cada uno de los siete dias de la semana en cada uno tres lugares.Declaramos la siguiente matriz:

int {} {} datosLluvia = new int{7} {3};

ERRORES COMUNES DE PROGRAMACION.

Un error comun en Java es confundir la longitud de una matriz con el rango de indices validos. Por ejemplo,la siguiente matriz:

int {} {} tabla = new int {11} {6};

tiene 11 filas 6 columnas.El rango  valido de indices para las filas es de 0 a 10. El rango valido de indices para las columnas es de 0 a 5. La referencia a tabla{11}{6} hara que el programa se detenga y aparezca un mensaje de error.

RESUMEN.

  • Un arreglo bidimensional o matriz es una coleccion de datos en una tabla, con filas y columnas. El programador debe asignar el nombre a una matriz.
  • Una matriz se declara,al igual que otras variables,de la siguiente forma:

int {}{} alice = new int {25} {30};

en donde 25 es el numero de filas y el 30 el numero de columnas.

  • Para hacer referencia a un elemento individual de una matriz utilizabamos indices enteros,como en el siguiente ejemplo:

alice{12} {3} = 45;

 

 

 

 

Contacto