You are on page 1of 4

MATRICES O TABLAS BIDIMENSIONALES

DEFINICIN DE UNA MATRIZ De manera similar a los vectores, una matriz es un conjunto de elementos del mismo tipo, reconocidos por su nombre en comn (residen en memoria RAM o sea que al apagar la computadora se pierden), distribuidos en forma de tabla. Un elemento es cada una de las celdas que forman la matriz. Se accede a cada celda a travs de la posicin que ocupa dentro de la matriz que se determina mediante un nmero de fila y un nmero de columna (dos subndices). Para poder usar una matriz hay que reservar una zona de memoria e indicar el nmero de filas y columnas que tendr. Representacin grfica de una matriz: DATOS Nombre de la matriz 1234 5678 9012 3456 7890 11 33 55 77 111 22 44 66 88 99

elementos de la matriz En el grfico anterior se muestra la matriz DATOS que tiene 15 elementos. Para referirse a un elemento en particular, se indica el subndice o posicin que ocupa en dicha matriz, que consta de dos datos: fila y columna. Por ejemplo: DATOS(2,3) Posicin dentro de la matriz Nombre de la matriz Elemento de referencia: 55 DATOS(3,5) se refiere al nmero 99 que est en la fila 3 columna 5 de la matriz DATOS. Las tablas pueden tener valores fijos y no variar su contenido durante la ejecucin del programa. O bien pueden ser declaradas en una zona de la memoria y obtener los valores de sus elementos durante la ejecucin del programa. RECORRIDO DE UNA MATRIZ El rango de posibles valores de los ndices variar desde 1 hasta la cantidad total de filas y desde 1 hasta la cantidad total de columnas. La posicin inicial (primer elemento) tendr los subndices 1,1. Recorrer una matriz significa acceder a todos y cada uno de los elementos desde el primero al ltimo. Para esto se usan dos estructuras Variar, en la que uno de los subndices contar la cantidad de filas y el otro la cantidad de columnas.

I 1 1 1

J 1 2 3

POSICIN EN LA MATRIZ DATOS(1,1) DATOS(1,2) DATOS(1,3)

MUESTRA POR PANTALLA 1234 5678 9012


ISP JVG Algoritmos y Programacin Prof. Diana Alejandra Seino 1

1 1 2 2 2 2 2 3 3 3 3 3

4 5 1 2 3 4 5 1 2 3 4 5

DATOS(1,4) DATOS(1,5) DATOS(2,1) DATOS(2,2) DATOS(2,3) DATOS(2,4) DATOS(2,5) DATOS(3,1) DATOS(3,2) DATOS(3,3) DATOS(3,4) DATOS(3,5)

3456 7890 11 33 55 77 111 22 44 66 88 99

ISP JVG Algoritmos y Programacin Prof. Diana Alejandra Seino 2

EJERCICIOS PARA DIAGRAMACIN


MATRICES

1) Cargar una matriz con las temperaturas de 5 ciudades durante un mes. Mostrar en forma de tabla, poniendo en el encabezado el nombre de las ciudades. 2) Cargar una matriz con las notas de 4 materias para los 25 alumnos de un curso. Mostrar el promedio por alumno. 3) dem anterior y cargar un vector con el promedio por alumno y cargar otro vector con el promedio por asignatura. Recorrer la matriz slo una vez. 4) Leer una matriz como sigue: 4 7 1 3 5 2 0 6 9 7 3 1 2 6 4 y mostrarla como sigue: 4 2 3 7 0 1 1 6 2 3 9 6 5 7 4 5) Dada la matriz: 4 7 -5 4 9 0 3 -2 6 -2 1 2 4 1 1 6 1 0 3 -4 3 1 2 4 5 mostrar la suma de todos los elementos que no pertenecen a la diagonal principal. 6) Dada una matriz de M filas y N columnas. Desarrollar un programa que: a) Imprima la matriz por columnas. b) Calcule e imprima el elemento promedio de la matriz. c) Genere e imprima un vector donde cada elemento sea la suma de los elementos de cada columna. Deduzca cuntas posiciones deber tener este vector. d) Genere e imprima otro vector donde cada elemento sea el valor mximo de cada fila. 7) Ingresar por filas una matriz cuadrada de N filas y columnas. Desarrollar un programa que determine e imprima: a) Todos los elementos de la diagonal principal o secundaria segn de cul resulte mayor la sumatoria de elementos. b) Los elementos del cuarto (N/2 filas y N/2 columnas) cuya sumatoria resulte mayor. c) Los elementos del tringulo superior o inferior dependiendo de cul tenga mayor sumatoria de elementos (la diagonal principal divide la matriz en dos tringulos y no pertenece a ninguno de ellos). 8) Se da un conjunto de 744 temperaturas que se tomaron diariamente hora por hora durante los das 1 a 31 de una localidad (el conjunto est ordenado por da y hora). Desarrollar un programa que determine e imprima: a) Armar la matriz TEMPEDIA e imprimirla por horas. b) En qu da y hora se produjo la temperatura mxima del mes. c) En qu da se produjo la menor temperatura media.
ISP JVG Algoritmos y Programacin Prof. Diana Alejandra Seino 3

d) A qu hora se produjo la mayor temperatura media. 9) Ingresar una matriz DESORDE de M filas y N columnas. Desarrollar el programa que: a) Ordene la matriz sobre s misma por filas (orden creciente) y la imprima por filas. b) Ordene la matriz sobre s misma del elemento (1; 1) al (M; N) en orden creciente y la imprima por filas. 10) Dado un vector con los registros de alumnos donde cada registro contiene: a) Apellido y Nombre del alumno; b) N de legajo y c) Divisin asignada. Desarrollar un algoritmo que imprima la lista de alumnos ordenados por N de legajo, a razn de 50 alumnos por pgina. Utilizar la rutina ORDENAR indicando los parmetros. Modificar la rutina MOSTRAR adaptndola a lo requerido en el ejercicio.

ISP JVG Algoritmos y Programacin Prof. Diana Alejandra Seino 4

You might also like