Tipos de datos y arreglos
Tipos de Datos y Estructuras (Arreglos)
Sección titulada «Tipos de Datos y Estructuras (Arreglos)»Los tipos de datos definen qué tipo de información puede almacenar una variable y cuánta memoria ocupará. Los arreglos nos permiten guardar muchos de estos datos bajo un mismo nombre.
1. Tipos de Datos Primitivos
Sección titulada «1. Tipos de Datos Primitivos»Son los ladrillos básicos de cualquier programa.
| Tipo | Descripción | C++ | Python |
|---|---|---|---|
| Entero | Números sin decimales () | int | int |
| Decimal | Números con coma () | float / double | float |
| Texto | Un solo carácter (‘A’) | char | (No existe, usa str) |
| Cadena | Conjunto de caracteres (“Hola”) | string | str |
| Booleano | Verdadero o Falso | bool | bool |
2. Diferencias de Declaración
Sección titulada «2. Diferencias de Declaración»En C++ (Tipado Estático)
Sección titulada «En C++ (Tipado Estático)»Debes decirle al compilador exactamente qué tipo de dato vas a guardar. Una vez declarado, no puede cambiar.
int cantidad = 10;float precio = 15.50;bool es_valido = true;string nombre = "Sensor ESP32";En Python (Tipado Dinámico)
Sección titulada «En Python (Tipado Dinámico)»El intérprete deduce el tipo automáticamente y puedes cambiarlo después si quieres.
cantidad = 10precio = 15.50es_valido = Truenombre = "Sensor ESP32"3. Arreglos (Arrays) y Listas
Sección titulada «3. Arreglos (Arrays) y Listas»Un arreglo es una colección de elementos del mismo tipo almacenados en posiciones contiguas de memoria.
Arreglos en C++
Sección titulada «Arreglos en C++»Tienen un tamaño fijo que debe definirse al principio.
int numeros[5] = {10, 20, 30, 40, 50};// Para acceder al primer elemento: numeros[0]Listas en Python
Sección titulada «Listas en Python»Son mucho más potentes: pueden cambiar de tamaño y guardar diferentes tipos de datos a la vez.
mi_lista = [10, "Texto", 3.14, True]mi_lista.append(100) # Añade un elemento al final4. Estructuras de Datos Avanzadas
Sección titulada «4. Estructuras de Datos Avanzadas»Vectores (C++)
Sección titulada «Vectores (C++)»Es la versión moderna de los arreglos en C++. Pueden cambiar de tamaño dinámicamente como las listas de Python.
#include <vector>std::vector<int> v = {1, 2, 3};v.push_back(4);Diccionarios (Python) / Maps (C++)
Sección titulada «Diccionarios (Python) / Maps (C++)»Guardan información en pares de Llave : Valor. Es lo que mencionábamos para búsquedas rápidas.
# Pythonprecios = {"Manzana": 1.5, "Pera": 2.0}print(precios["Manzana"])5. El tipo de dato “String” (Cadenas)
Sección titulada «5. El tipo de dato “String” (Cadenas)»Aunque parece simple, un string es en realidad un arreglo de caracteres (char).
- En C++: Puedes acceder a una letra específica con
nombre[0]. - En Python: Los strings son inmutables (no puedes cambiar una letra individualmente, tienes que crear un string nuevo).
Resumen Técnico
Sección titulada «Resumen Técnico»- Variable (
var): En lenguajes como JS se usavar, pero en C++ moderno se usaautopara que el compilador adivine el tipo, y en Python no se usa palabra clave. - Constantes: Valores que nunca cambian. (C++:
const int PI = 3.14;| Python: se suelen escribir en MAYÚSCULAS por convención). - Booleanos: Fundamentales para los condicionales. En Python se escriben con mayúscula (
True,False) y en C++ con minúscula (true,false).
Nota para la bitácora: Los arreglos siempre empiezan a contar desde la posición 0. Si un arreglo tiene 10 elementos, el último es el 9. Acceder al índice 10 causará un error de “desbordamiento” (buffer overflow).