⚙️ C++

Introducción a C++: historia, características, aplicación en C++

¿Qué es y para qué sirve?

Imagina que le das órdenes a un robot. Si le dices "haz algo", se confundirá. Pero si le dices "gira a la izquierda, camina 5 pasos, levanta la mano", lo hará con precisión. C++ es un lenguaje con el que escribes instrucciones muy precisas para la computadora. Es como un set de LEGO: tú mismo ensamblas cada pieza, por lo que obtienes programas rápidos y potentes.

¿Por qué aprenderlo? Primero, en C++ funcionan juegos (como Minecraft), navegadores y naves espaciales. Segundo, te enseña a pensar como programador: entenderás cómo la computadora almacena números, cómo funciona la memoria. Es como saber no solo conducir un auto, sino también qué hay debajo del capó.

Incluso si eres principiante, C++ no es tan aterrador como parece. Empezaremos con las cosas más simples: cómo escribir "¡Hola, mundo!" y contar caramelos.

Sintaxis y ejemplos de código

La sintaxis son las reglas del lenguaje, como la gramática en español. En C++, cada comando termina con un punto y coma ; y los bloques de código se envuelven entre llaves {}. Veamos ejemplos prácticos.

Ejemplo 1: ¡Hola, mundo!

#include <iostream>  // Incluimos la biblioteca para entrada/salida
using namespace std;  // Para no escribir std:: antes de cout

int main() {          // Función principal, aquí comienza el programa
    cout << "¡Hola, mundo!" << endl;  // Mostramos texto en pantalla
    return 0;         // Indicamos que el programa terminó correctamente
}

Cómo funciona: #include es como si tomáramos un conjunto de herramientas ya preparado. int main() es la puerta de entrada del programa. Dentro de {} escribimos los comandos. cout es la "máquina de escribir" que muestra texto. endl es un salto de línea.

Ejemplo 2: Contamos caramelos

#include <iostream>
using namespace std;

int main() {
    int candies = 10;           // Número entero: cantidad de caramelos
    int friends = 3;            // Cuántos amigos
    int each = candies / friends;  // Dividimos los caramelos equitativamente (división entera)
    
    cout << "A cada uno le tocan " << each << " caramelos" << endl;
    return 0;
}

Explicación: int es el tipo de dato para números enteros (como 10, 3). / es la división. Pero hay un detalle: si dividimos 10 entre 3, obtenemos 3, no 3.33, porque trabajamos con números enteros. ¡El resto (1 caramelo) se pierde, hay que tenerlo en cuenta!

Ejemplo 3: Adivina el número

#include <iostream>
using namespace std;

int main() {
    int secret = 7;  // Número secreto
    int guess;       // Variable para la respuesta del usuario
    
    cout << "Adivina el número del 1 al 10: ";
    cin >> guess;   // Leemos el número que ingresa el usuario
    
    if (guess == secret) {            // Si adivinó
        cout << "¡Ganaste!" << endl;
    } else {                          // Si no
        cout << "No adivinaste. Era " << secret << endl;
    }
    return 0;
}

Cosas nuevas: cin es el "micrófono" que escucha lo que ingresa el usuario. if es una verificación de condición. == es comparación (¡no confundir con =, que asigna un valor!). else significa "si no".

Ejemplo 4: Bucle — repetimos 5 veces

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {  // Inicio: i=1; condición: mientras i<=5; paso: i+1
        cout << "Línea número " << i << endl;
    }
    return 0;
}

Cómo entenderlo: for es como "repite 5 veces". int i = 1 crea un contador. i <= 5 significa que mientras el contador no sea mayor que 5, seguimos. i++ aumenta el contador en 1 después de cada paso. Al final, veremos 5 líneas en pantalla.

Ejemplo 5: Función — tu propio ayudante

#include <iostream>
using namespace std;

// Creamos una función que saluda por nombre
void greet(string name) {  // void — la función no devuelve nada
    cout << "¡Hola, " << name << "!" << endl;
}

int main() {
    greet("Ana");  // Llamamos a la función con el nombre "Ana"
    greet("Pedro");
    return 0;
}

Idea: Las funciones son como recetas. Escribes la receta greet una vez y luego la usas muchas veces. string es el tipo de dato para texto. Dentro de los paréntesis (string name) están los ingredientes que pasamos a la función.

Comparación con Python

Python es como el lenguaje coloquial: "Oye, computadora, haz esto". C++ es como un manual técnico: "Toma el registro AX, escribe 5 allí, realiza la suma". Comparemos con ejemplos.

Tarea C++ Python
Mostrar texto cout << "Hola"; print("Hola")
Ingresar un número cin >> x; x = int(input())
Condición if (x > 0) { ... } if x > 0: ...
Bucle 5 veces for (int i=0; i<5; i++) for i in range(5):
Función void f(int a) { ... } def f(a): ...

Diferencias principales:

  • Punto y coma: En C++ son oblig