Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Lenguaje C

Dominando Arrays Multidimensionales en C++: Declaración, Inicialización y Recorrido

Arrays Multidimensionales en C++

Esta guía te lleva a través de la declaración, inicialización e iteración sobre arrays 2-D y 3-D en C++. Se incluyen muestras de código prácticas y mejores prácticas.

En C++, un array multidimensional es simplemente un array de arrays. Por ejemplo:

int x[3][4];

Aquí, x es un array bidimensional que puede contener 12 elementos. Visualízalo como una tabla con 3 filas y 4 columnas.

Dominando Arrays Multidimensionales en C++: Declaración, Inicialización y Recorrido

Los arrays tridimensionales siguen la misma lógica:

float x[2][4][3];

Con 24 elementos en total, calculados multiplicando las dimensiones: 2 × 4 × 3 = 24.


Inicialización de Array Multidimensional

Como los arrays unidimensionales, los arrays multidimensionales pueden inicializarse de múltiples formas, pero la claridad importa. Las siguientes secciones muestran prácticas recomendadas.

1. Inicialización de Array Bidimensional

int prueba[2][3] = {2, 4, 5, 9, 0, 19};

Aunque sintácticamente correcto, este estilo es difícil de leer. Prefiere un inicializador anidado:

int prueba[2][3] = {{2, 4, 5}, {9, 0, 19}};

Esto hace explícitas las 2 filas y 3 columnas.

Dominando Arrays Multidimensionales en C++: Declaración, Inicialización y Recorrido

2. Inicialización de Array Tridimensional

int prueba[2][3][4] = {3, 4, 2, 3, 0, -3, 9, 11, 23, 12, 23, 2, 13, 4, 56, 3, 5, 9, 3, 5, 5, 1, 4, 9};

De nuevo, la legibilidad sufre. Un enfoque más claro agrupa cada dimensión:

int prueba[2][3][4] = { {{3, 4, 2, 3}, {0, -3, 9, 11}, {23, 12, 23, 2}}, {{13, 4, 56, 3}, {5, 9, 3, 5}, {5, 1, 4, 9}} };

Observa que la primera dimensión contiene dos bloques de 3 filas, cada uno con cuatro columnas.


Ejemplo 1: Array Bidimensional

#include <iostream> using namespace std; int main() { int prueba[3][2] = {{2, -5}, {4, 0}, {9, 1}}; for (int i = 0; i < 3; ++i) { for (int j = 0; j < 2; ++j) { cout << "prueba[" << i << "][" << j << "] = " << prueba[i][j] << endl; } } return 0; }

Salida

prueba[0][0] = 2 prueba[0][1] = -5 prueba[1][0] = 4 prueba[1][1] = 0 prueba[2][0] = 9 prueba[2][1] = 1

Este fragmento demuestra un bucle for anidado que itera primero sobre filas, luego columnas, imprimiendo cada elemento.


Ejemplo 2: Tomando Entrada para un Array Bidimensional

#include <iostream> using namespace std; int main() { int numeros[2][3]; cout << "Ingresa 6 números: " << endl; for (int i = 0; i < 2; ++i) { for (int j = 0; j < 3; ++j) { cin >> numeros[i][j]; } } cout << "Los números son: " << endl; for (int i = 0; i < 2; ++i) { for (int j = 0; j < 3; ++j) { cout << "números[" << i << "][" << j << "]: " << numeros[i][j] << endl; } } return 0; }

Salida

Ingresa 6 números: 1 2 3 4 5 6 Los números son: números[0][0]: 1 números[0][1]: 2 números[0][2]: 3 números[1][0]: 4 números[1][1]: 5 números[1][2]: 6

Aquí, dos bucles anidados recopilan entrada del usuario y luego muestran los valores almacenados.


Ejemplo 3: Array Tridimensional

#include <iostream> using namespace std; int main() { int prueba[2][3][2] = { {{1, 2}, {3, 4}, {5, 6}}, {{7, 8}, {9, 10}, {11, 12}} }; for (int i = 0; i < 2; ++i) { for (int j = 0; j < 3; ++j) { for (int k = 0; k < 2; ++k) { cout << "prueba[" << i << "][" << j << "][" << k << "] = " << prueba[i][j][k] << endl; } } } return 0; }

Salida

prueba[0][0][0] = 1 prueba[0][0][1] = 2 prueba[0][1][0] = 3 prueba[0][1][1] = 4 prueba[0][2][0] = 5 prueba[0][2][1] = 6 prueba[1][0][0] = 7 prueba[1][0][1] = 8 prueba[1][1][0] = 9 prueba[1][1][1] = 10 prueba[1][2][0] = 11 prueba[1][2][1] = 12

Recorrer un array 3-D requiere tres bucles anidados —cada uno correspondiente a una dimensión. Este patrón escala naturalmente a dimensiones superiores, aunque la complejidad crece rápidamente.

Lenguaje C

  1. Dominando arrays en C#: Declaración, inicialización y operaciones
  2. Arrays multidimensionales en C#: Arrays 2D explicados con ejemplos de código
  3. Dominando arrays escalonados en C#: Declaración, inicialización y acceso
  4. Entendiendo la Conversión de Tipos en C++: Implícita, Explícita y Técnicas de Casting
  5. Dominando los Operadores en C++: Guía Completa con Ejemplos Prácticos
  6. Comentarios en C++: Mejores Prácticas para Código Legible y Mantenible
  7. Cómo Pasar Arrays a Funciones en C++: Guía Práctica
  8. Arrays en C++: Declaración, inicialización y técnicas con punteros
  9. Asignación dinámica de arrays en C++: Guía práctica con ejemplos de código
  10. MATLAB: Dominando Arrays Multidimensionales y Especiales
  11. Técnicas de Copia de Arrays en Java: Guía Completa