Cómo utilizar matrices multidimensionales en la programación c

Cuando usted necesita para describir los elementos de la segunda o tercera dimensión, puede utilizar la programación en C para conjurar a luz un tipo multidimensional de la matriz.

Cómo hacer una matriz de dos dimensiones

Ayuda a pensar en una matriz bidimensional como una cuadrícula de filas y columnas. Un ejemplo de este tipo de matriz es un tablero de ajedrez - una cuadrícula de 8 filas y 8 columnas. Aunque se puede declarar una sola 64-elemento de la matriz para manejar el trabajo de representar a un tablero de ajedrez, una matriz bidimensional funciona mejor. Tal cosa sería declarado de esta manera:

int ajedrez [8] [8] -

Los dos corchetes definen dos dimensiones diferentes de la matriz de ajedrez: 8 filas y 8 columnas. La plaza ubicada en la primera fila y la columna se hace referencia como el ajedrez [0] [0]. La última plaza en esa fila sería ajedrez [0] [7], y el último cuadro en el tablero de ajedrez sería [7] [7].

En Tic-Tac-Toe, un tablero de tic-tac-toe sencilla se crea utilizando una matriz de dos dimensiones: 3-por-3. Las líneas 9 a 11 se llenan en la matriz. Línea 12 añade un carácter X en la plaza central.

TIC-TAC-TOE

#include int main () {tictactoe char [3] [3] -INT x, y - / * inicializar la matriz * / for (x = 0-xlt; 3-x ++) para (y = 0-YLT; 3-y ++ ) tictactoe [x] [y] = '.'- tictactoe [1] [1] =' X '- / * tablero de juego pantalla * / puts ("Listo para jugar Tic-Tac-Toe?")-for(x=0-xlt;3-x++){for(y=0-ylt;3-y++)printf("%ct",tictactoe[x][y])-putchar('n')-}return(0)-}

Líneas 14 a 21 muestran la matriz. Al igual que con su creación, la matriz se muestra usando un bucle for anidado.

Ejercicio 1: Crear un nuevo proyecto con el código fuente se muestra en Tic-Tac-Toe. Genere y ejecute.

Un tipo de matriz bidimensional que es bastante fácil de entender es una matriz de cadenas, como se muestra en una matriz de cadenas.

Una matriz de cadenas

#include TAMAÑO #define 3int main () {presidente char [TAMAÑO] [8] = {"Clinton", "Bush", "Obama"} - int x, índice-for (x = 0-x

Línea 7 en una matriz de cadenas declara una matriz de caracteres de dos dimensiones: el presidente. El primer valor entre corchetes es el número de elementos (cadenas) de la matriz. El segundo valor entre corchetes es el tamaño máximo requerido para mantener la cadena más grande. La cadena más grande es Clinton con siete cartas, por lo que se requieren ocho caracteres, que incluye el 0 o nulo carácter de terminación.

Porque todos los artículos en segunda dimensión de la matriz deben tener el mismo número de elementos, todas las cadenas se almacenan utilizando ocho caracteres. Sí, eso es un desperdicio, pero es la forma en que el sistema funciona.

imagen0.jpg

Ejercicio 2: Escriba el código fuente de una matriz de cadenas en su construcción editor- y ejecutar el programa.

Las declaraciones básicamente caminan pesadamente a través segunda dimensión de la matriz presidente, escupiendo un carácter a la vez.

Ejercicio 3: Reemplace las líneas 15 a 23 en una matriz de cadenas con una sola puts () para mostrar la cadena. Así es como se ve esa declaración:

puts (presidente [x]) -

Cuando se trabaja con elementos de cadena en una matriz, la cadena se hace referencia sólo la primera dimensión.

Ejercicio 4: Modificar el código fuente del Ejercicio 3 para que otros tres presidentes se añaden a la gama: Washington, Adams y Jefferson.

Cómo crear matrices tridimensionales

Arrays bidimensionales son bastante comunes en el ámbito de programación. Multidimensional es una locura!

Bueno, tal vez no. Tres y arrays de cuatro dimensiones tienen su lugar. El gran problema es que el cerebro humano tiene problemas para mantenerse al día con las diversas dimensiones posibles.

Yendo 3D ilustra código que funciona con una matriz tridimensional. La declaración se encuentra en la línea 5. La tercera dimensión es simplemente el tercer juego de corchetes, lo que crea efectivamente un tablero de juego de tic-tac-dedo del pie en 3D.

IR 3D

#include int main () {tictactoe char [3] [3] [3] -INT x, y, z - / * inicializar la matriz * / for (x = 0-xlt; 3-x ++) para (y = 0- YLT; 3-y ++) para (z = 0-zlt; 3-z ++) tictactoe [x] [y] [z] = '.'- tictactoe [1] [1] [1] =' X '- / * tablero de juego pantalla * / puts ("Listo para jugar en 3D Tic-Tac-Toe?") - para (z = 0-zlt; 3-z ++) {printf ("Nivel %dn",z+1)-for(x=0-xlt;3-x++){for(y=0-ylt;3-y++)printf("%ct",tictactoe[x][y][z])-putchar('n')-}}return(0)-}

Líneas 8 a 12 se llenan la matriz con los datos, el uso de variables X, y, y z como las coordenadas tridimensionales. Línea 13 lugares un carácter X en el cubo central, que le da una idea de cómo los elementos individuales se hace referencia.

El resto del código de Líneas 15 a través de 26 pantallas de la matriz.

Ejercicio 5: Crear un programa de arreglo tridimensional utilizando el código fuente desde Going 3D. Genere y ejecute.

Lamentablemente, la salida es de dos dimensiones.




» » » » Cómo utilizar matrices multidimensionales en la programación c