C++
Fundamentos de la Programación
Operadores
Operadores Aritméticos
Se usan para realizar operaciones matemáticas básicas. Incluyen + (suma), - (resta), * (multiplicación), / (división), % (módulo: devuelve el residuo de una división).
Operadores de Comparación
Comparan dos valores y devuelven un valor booleano (true o false). Incluyen == (igual a), != (diferente de), > (mayor que), < (menor que), >= (mayor o igual que), y <= (menor o igual que).
Operadores Lógicos
Se usan para combinar condiciones. Incluyen && (y lógico), || (o lógico), y ! (no lógico).
Variables y Tipos de Datos
Se utilizan para almacenar datos que pueden ser usados y manipulados en un programa.
Tipos de datos fundamentales:
- Enteros |
int| Números enteros sin decimales - Flotantes |
float,double| Números con parte decimal - Caracteres |
char| Caracteres individuales - Booleanos |
bool|trueofalse
Declaración de variables:
int edad = 25;
double precio = 99.99;
char inicial = 'J';
bool esActivo = true;
Estructuras de Datos
Arreglos (Arrays)
Son colecciones de elementos del mismo tipo. Se declaran usando corchetes [] y tienen un tamaño fijo.
Declaración y uso:
int numeros[5] = {1, 2, 3, 4, 5};
double temperaturas[3] = {36.5, 37.0, 38.2};
Strings
Para manejar texto, C++ usa la biblioteca <string>.
#include <string>
using namespace std;
string nombre = "Juan";
string saludo = "Hola, " + nombre;
Control de Flujo
Condicionales
Estructura if, else if, else: Permiten ejecutar código basado en ciertas condiciones.
Ejemplo básico:
int calificacion = 85;
if (calificacion >= 90) {
cout << "Excelente" << endl;
} else if (calificacion >= 70) {
cout << "Aprobado" << endl;
} else {
cout << "Reprobado" << endl;
}
Bucles
Ciclo while
Un bucle while repite un bloque de código mientras una condición sea verdadera.
int contador = 1;
while (contador <= 5) {
cout << contador << endl;
contador++;
}
Ciclo for
Un bucle for se utiliza para iterar un número determinado de veces.
for (int i = 0; i < 5; i++) {
cout << "Iteración: " << i << endl;
}
Ciclo do-while
Similar a while, pero garantiza que el código se ejecute al menos una vez.
int numero;
do {
cout << "Ingrese un número positivo: ";
cin >> numero;
} while (numero <= 0);
Funciones
Son bloques de código reutilizables que realizan una tarea específica. Se definen con un tipo de retorno, nombre y parámetros.
Función simple:
void saludar(string nombre) {
cout << "Hola, " << nombre << "!" << endl;
}
saludar("Ana");
Función con valor de retorno:
int suma(int a, int b) {
return a + b;
}
int resultado = suma(3, 5);
cout << "Resultado: " << resultado << endl;
Función con múltiples parámetros:
double calcularPromedio(double a, double b, double c) {
return (a + b + c) / 3.0;
}
double promedio = calcularPromedio(8.5, 9.0, 7.5);
Estructuras de Control Avanzadas
Switch-case
Útil para tomar decisiones basadas en el valor de una variable entera o caracter.
int dia = 3;
switch (dia) {
case 1:
cout << "Lunes" << endl;
break;
case 2:
cout << "Martes" << endl;
break;
case 3:
cout << "Miércoles" << endl;
break;
default:
cout << "Otro día" << endl;
}
Entrada y Salida
Biblioteca iostream
C++ usa <iostream> para manejar la entrada y salida estándar.
#include <iostream>
using namespace std;
int main() {
string nombre;
int edad;
cout << "Ingrese su nombre: ";
cin >> nombre;
cout << "Ingrese su edad: ";
cin >> edad;
cout << "Hola " << nombre << ", tienes " << edad << " años." << endl;
return 0;
}
Punteros (Introducción)
Los punteros son variables que almacenan direcciones de memoria.
Declaración y uso básico:
int numero = 42;
int* puntero = № // & obtiene la dirección
cout << "Valor: " << *puntero << endl; // * accede al valor
cout << "Dirección: " << puntero << endl;
Compilación y Ejecución
Compilar con g++:
g++ programa.cpp -o programa
./programa
Próximos Pasos
- Explorar clases y programación orientada a objetos
- Aprender sobre plantillas (templates)
- Estudiar la biblioteca estándar de C++ (STL)
- Practicar con estructuras de datos complejas