El arreglo bidimensional es un tipo de dato estructurado que cumple las siguientes condiciones, es finito, ordenado y sus elementos son todos del mismo tipo. El acceso a ellos también es en forma directa por medio de dos sub-índices. El primero se refiere a la fila y el segundo se refiere a la columna.
Los arreglos bidimensionales generalmente se denominan "Tablas" o bien del álgebra lineal "Matrices". Supóngase que se tiene un arreglo llamado K de dimensión 4 x 3 al que representaremos intuitivamente de la siguiente manera:
Cuando no referimos al elemento K[3, 2] estamos referenciando la posición de memoria del arreglo K en la fila 3 y columna 2: Sea el valor -12.
Y así con cualquier otro elemento del arreglo.
Declaración de una matriz
tipo_de_dato nombre_del_arreglo[tamaño-fila][tamaño-columna]
El número de valores (del mismo tipo de dato) que pueden ser almacenados en el arreglo está determinado por la cardinalidad del producto
[tamaño-fila]x[tamaño-columna].
Una matriz o arreglo bidimensional se puede inicializar de este modo:
int matriz[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
int edades[3][2] = {{11,12},{19,18},{24,21}};
Ejemplo:
Leer los datos de una matriz de enteros de 3 x 4, la salida por pantalla es: A) Los datos cargados en la matriz. B) Promedio general. C) Porcentaje de números positivos. D) Sumatoria de los números impares ingresados en la matriz.
Solución:
Variables:
int m[3][4],nfila,ncol,sumPos=0,sumImpar=0;
real prom=0,porc=0
Entrada:
Cargar matriz 3 x 4
Salida:
Mostrar matriz, Promedio, Porcentaje de números positivos, Suma de números impares.
Diagrama N-S:
Código C++
Ejemplo:
Escribir un algoritmo que genere una matriz 4 x 4 aleatoria de números enteros. Se imprima la matriz, el elemento menor y la posición del elemento menor y el elemento mayor y la posición en la matriz.
Solución
Variables:
int matAleat[4][4],nfila,ncol, min, May
Entrada:
Generar matriz aleatoria 4 x 4
Salida:
Mostrar matriz, elemento menor en la matriz y su posición, elemento mayor en la matriz y su posición.
Diagrama N-S:
Código C++