Episodio 10
Un arreglo es una fila. ¿Y si necesitas un tablero, una hoja de cálculo o los asientos de un cine? Entonces usas varias filas: una matriz. ♟️🎬
Una matriz es una tabla de filas y columnas. También puedes verla como un arreglo de arreglos: cada fila es un arreglo, y la matriz es la fila de todas esas filas.
Tableros
ajedrez, tres en raya
Asientos
filas y sillas de un cine
Hojas de cálculo
Excel, Google Sheets
Imágenes
una tabla de píxeles
En un arreglo bastaba una posición. En una matriz hacen falta dos: primero la fila y luego la columna, ambas empezando en 0. Se escribe tabla[fila][columna].
Primero bajas hasta la fila y luego te mueves a la columna. tabla[1][2] es la fila 1, columna 2: aquí el 6.
Una matriz tiene filas y columnas. Una de 3 filas y 4 columnas es de 3 × 4 y tiene 12 cajitas.
Pedir una fila o columna que no existe da error, igual que en los arreglos.
Esta matriz es de 3 filas × 4 columnas. Elige fila y columna y léela o cámbiala.
Para un arreglo bastaba un bucle PARA. Para una matriz usamos dos, uno dentro del otro (bucles anidados): el de afuera recorre las filas (i) y el de adentro recorre las columnas (j) de esa fila.
Avanza paso a paso. La celda que se usa se ilumina. Observa cómo j vuelve a empezar cada vez que i cambia de fila. Puedes cambiar los valores antes de empezar.
El tres en raya es una matriz de 3×3. Cada vez que juegas, el programa guarda una X o una O en una posición [fila][columna]. ¡Juega y mira qué guarda!
Python
# una lista de listas tabla = [[1, 2, 3], [4, 5, 6]] print(tabla[1][2]) # 6 tabla[0][0] = 9 filas = len(tabla) # 2 columnas = len(tabla[0]) # 3 for i in range(filas): for j in range(columnas): print(tabla[i][j])
JavaScript
// un arreglo de arreglos let tabla = [[1, 2, 3], [4, 5, 6]]; console.log(tabla[1][2]); // 6 tabla[0][0] = 9; let filas = tabla.length; // 2 let columnas = tabla[0].length; // 3 for (let i = 0; i < filas; i++) { for (let j = 0; j < columnas; j++) { console.log(tabla[i][j]); } }
💡 Una matriz es solo un arreglo cuyas cajitas son otros arreglos. Por eso tabla[1] es una fila completa y tabla[1][2] es una sola celda de esa fila.
Siempre fila primero, columna después, y las dos empiezan en 0.
Con dos bucles anidados, multiplica las vueltas de cada uno.
tabla[fila][columna], ambas desde 0 y fila primero.