90. ¿Qué son y cómo se declaran?

 📋 Introducción a los Arreglos Bidimensionales

Si ya conoces los arreglos unidimensionales, los arreglos bidimensionales te permitirán trabajar con datos organizados en filas y columnas, similar a una hoja de cálculo de Excel.

¿Qué es un Arreglo Bidimensional?

Un arreglo bidimensional es una estructura de datos que organiza la información en forma de tabla con:

  • Filas: Dimension vertical

  • Columnas: Dimension horizontal

🔧 Declaración de Arreglos Bidimensionales

Sintaxis Básica

cpp
tipoDato nombreArreglo[filas][columnas];

Ejemplo:

cpp
int multi[2][2];  // 2 filas y 2 columnas

Formas de Declaración e Inicialización

Método 1: Declaración e inicialización posterior

cpp
int multi[2][2];
multi[0][0] = 32;
multi[0][1] = 51;
multi[1][0] = 200;
multi[1][1] = 22;

Método 2: Declaración e inicialización simultánea

cpp
int multi[2][2] = {
  {32, 51},
  {200, 22}
};

🎯 Acceso a los Elementos del Arreglo

Analogía con Excel

ArduinoExcel Equivalente
multi[0][0]Fila 1, Columna A
multi[0][1]Fila 1, Columna B
multi[1][0]Fila 2, Columna A
multi[1][1]Fila 2, Columna B

Ejemplo Práctico de Asignación

cpp
// Acceso y asignación de valores
multi[0][0] = 32;   // Fila 0, Columna 0
multi[0][1] = 51;   // Fila 0, Columna 1
multi[1][0] = 200;  // Fila 1, Columna 0
multi[1][1] = 22;   // Fila 1, Columna 1

📊 Recuperación de Datos

Cómo Leer Valores del Arreglo

cpp
void setup() {
  Serial.begin(9600);
  
  int multi[2][2] = {
    {32, 51},
    {200, 22}
  };
  
  // Acceder a un valor específico
  int valor = multi[1][0];  // Obtiene el valor 200
  
  Serial.print("El valor en [1][0] es: ");
  Serial.println(valor);
}

void loop() {
  // Tu código principal aquí
}

🚀 Ejemplo Completo en Arduino

Código Final con Variables para Dimensiones

cpp
void setup() {
  Serial.begin(9600);
  
  // Usando variables para las dimensiones
  const int filas = 2;
  const int columnas = 2;
  
  int multi[filas][columnas] = {
    {32, 51},
    {200, 22}
  };
  
  // Acceder y mostrar valores
  Serial.println("=== VALORES DEL ARREGLO BIDIMENSIONAL ===");
  
  for(int i = 0; i < filas; i++) {
    for(int j = 0; j < columnas; j++) {
      Serial.print("multi[");
      Serial.print(i);
      Serial.print("][");
      Serial.print(j);
      Serial.print("] = ");
      Serial.println(multi[i][j]);
    }
  }
}

void loop() {
  // El código se ejecuta una vez en setup
}

💡 Consejos y Buenas Prácticas

  1. Usa constantes para definir dimensiones:

    cpp
    const int FILAS = 2;
    const int COLUMNAS = 3;
    int miArreglo[FILAS][COLUMNAS];
  2. Los índices siempre comienzan en 0

  3. Puedes anidar bucles para recorrer todo el arreglo:

    cpp
    for(int i = 0; i < filas; i++) {
      for(int j = 0; j < columnas; j++) {
        // Procesar multi[i][j]
      }
    }

🎓 Resumen

  • Los arreglos bidimensionales organizan datos en filas y columnas

  • La sintaxis es: tipo nombre[filas][columnas]

  • El acceso se realiza mediante dos índices: [fila][columna]

  • Son ideales para representar matrices, tablas y datos tabulares

  • Puedes usar variables para definir las dimensiones, facilitando modificaciones futuras

Comentarios

Entradas más populares de este blog

12. Demostracion de como usar Tinkercad para simular Arduino con circuitos

11. Ejemplos Básicos de Leds y Pulsadores

Lectura de Potenciómetro con Arduino Uno en Tinkercad