Programación en C++: variables, cin, cout y operadores
Esta lección es parte de Temario de Electrónica de Décimo año Lección 28 de 51Por Andrea del Carmen actualizado el 29 de octubre de 2026 7 min de lectura
En el taller tienes un resistor de 220 Ω y una batería de 5 V, y quieres saber cuánta corriente pasa. Con calculadora son diez segundos. Pero si te piden la corriente para cincuenta combinaciones de voltaje y resistencia, ya es otra cosa. Ahí es donde un programa corto en C++ hace el trabajo mientras tú mides. Este tema es tu primer contacto con la programación en C++: cómo se escribe un programa mínimo, cómo se guardan datos, cómo se piden y se muestran, y cómo se toman decisiones.
Definición
C++ es un lenguaje de programación compilado: escribes el programa en un archivo de texto (el código fuente), un compilador lo traduce a lenguaje de máquina y el resultado es un ejecutable. Un programa siempre empieza a ejecutarse en la función main.
El programa más corto y sus piezas#
#include <iostream>
using namespace std;
int main() {
cout << "Hola, taller de electronica" << endl;
return 0;
}
Línea por línea:
#include <iostream>trae el archivo de cabecera que definecinycout. Sin esta línea, el compilador no conoce esas palabras. Otra cabecera frecuente es<cmath>, que da funciones comosqrt(raíz cuadrada) ypow(potencia).using namespace std;evita escribirstd::coutcada vez.int main()es la función principal. Todo lo que está entre sus llaves{ }es lo que se ejecuta.coutenvía datos a la pantalla con el operador<<.endltermina la línea y baja el cursor.return 0;le dice al sistema que el programa terminó bien.- El punto y coma
;cierra cada instrucción. Olvidarlo es el error más común de los principiantes.
Para compilar y correr en Linux, con el compilador g++, guardas el archivo como hola.cpp y escribes g++ hola.cpp -o hola, y luego ./hola. En Windows, con un entorno como Code::Blocks o Dev-C++, es un botón de «compilar y ejecutar».
Secuencias de escape#
Son combinaciones que empiezan con una barra invertida y producen un carácter especial dentro de un texto entre comillas:
| Secuencia | Efecto |
|---|---|
| \n | Salto de línea (igual que endl) |
| \t | Tabulador: salta a la siguiente columna |
| \\ | Imprime una barra invertida |
| \” | Imprime unas comillas dentro del texto |
Por ejemplo, cout << "V\tI\n"; escribe una V, un tabulador, una I y baja de línea. Sirve para armar tablas de resultados alineadas.
Variables y tipos de datos#
Una variable es un espacio de memoria con nombre donde guardas un valor. Antes de usarla se declara, diciendo su tipo y su nombre.
| Tipo | Guarda | Ejemplo |
|---|---|---|
| int | Números enteros | int cantidad = 12; |
| float | Decimales (precisión simple) | float tension = 5.0; |
| double | Decimales (doble precisión) | double r = 4700.0; |
| char | Un carácter | char opcion = ‘s’; |
| bool | Verdadero o falso | bool encendido = true; |
Los números decimales se escriben con punto, no con coma: 3.3, no 3,3. Los nombres no llevan espacios ni empiezan con número, y C++ distingue mayúsculas de minúsculas: Tension y tension son variables distintas.
Entrada con cin y salida con cout#
cin lee lo que el usuario teclea y lo guarda en una variable, con el operador >>. La flecha apunta hacia donde van los datos: en cout hacia la pantalla, en cin hacia la variable. Un programa completo que calcula la corriente con la ley de Ohm:
#include <iostream>
using namespace std;
int main() {
float tension, resistencia, corriente;
cout << "Tension en voltios: ";
cin >> tension;
cout << "Resistencia en ohmios: ";
cin >> resistencia;
if (resistencia > 0) {
corriente = tension / resistencia;
cout << "Corriente: " << corriente << " A" << endl;
} else {
cout << "La resistencia debe ser mayor que cero" << endl;
}
return 0;
}
Ejemplo. El usuario teclea 5 y 220. ¿Qué muestra?
Solución. corriente = 5 / 220 = 0,0227272… A. Por defecto cout muestra seis cifras significativas y usa punto decimal, así que escribe Corriente: 0.0227273 A, es decir, unos 22,7 mA. Si teclea 0 como resistencia, el if lo detecta y muestra el aviso en lugar de dividir entre cero.
Operadores aritméticos y relacionales#
| Operador | Operación | Ejemplo con a = 7 y b = 2 |
|---|---|---|
| + | Suma | a + b da 9 |
| – | Resta | a – b da 5 |
| * | Multiplicación | a * b da 14 |
| / | División | a / b da 3 si ambas son int |
| % | Residuo (módulo) | a % b da 1 |
Aquí cae mucha gente. Entre dos enteros, / descarta los decimales: 7 / 2 da 3, no 3,5. Para obtener 3,5 al menos uno de los dos debe ser decimal, como en 7 / 2.0. Es la razón de que, en los programas de electrónica, las magnitudes (voltajes, resistencias) se declaren casi siempre como float o double.
Los operadores relacionales comparan y dan un resultado verdadero o falso: == (igual), != (distinto), <, >, <=, >=. Mucha gente confunde = con ==. Un solo signo asigna un valor (x = 5 guarda 5 en x); dos signos preguntan si son iguales (x == 5). Escribir if (x = 5) no da error, pero asigna 5 a x y la condición siempre resulta verdadera.
Funciones#
Una función es un bloque con nombre que recibe datos, hace un trabajo y devuelve un resultado. main es una; tú puedes escribir las tuyas, antes de main:
float potencia(float v, float r) {
return v * v / r;
}
Dentro de main la llamas así: cout << potencia(12, 100);. Con v = 12 y r = 100 calcula 144 / 100 = 1,44 y muestra 1.44, o sea 1,44 W, la potencia que disipa un resistor de 100 Ω con 12 V. La ventaja de escribir la función una vez es que la puedes usar cuantas veces quieras sin repetir la fórmula.
Control: decisión y repetición#
Ya viste if … else. Para repetir, el ciclo for junta en una línea el valor inicial, la condición y el incremento:
for (int i = 1; i <= 3; i++) {
cout << "Medicion " << i << endl;
}
Muestra tres líneas, de «Medicion 1» a «Medicion 3». La variable i empieza en 1, el ciclo sigue mientras i ≤ 3 y i++ le suma 1 en cada vuelta. Si no conoces el número de vueltas de antemano, se usa while (condición).
Errores que te va a señalar el compilador#
- Falta el
;al final de una instrucción. - Falta
#include <iostream>: «cout was not declared». - Llaves sin cerrar: cada
{necesita su}. - Variable usada sin declarar, o declarada con un nombre distinto al que se escribe después.
- Texto sin comillas de cierre.
Cuando el compilador marque varios errores a la vez, corrige el primero y compila de nuevo: casi siempre los demás eran consecuencia de ese.
Ponte a prueba#
¿Qué hace la línea #include <iostream> y qué pasa si falta?#
Trae el archivo de cabecera que define cin y cout. Sin ella el compilador no reconoce esas palabras y marca error.
Si a = 9 y b = 4 son int, ¿cuánto valen a / b y a % b?#
a / b vale 2, porque la división entre enteros descarta los decimales (2,25). a % b vale 1, el residuo de dividir 9 entre 4.
¿Cuál es la diferencia entre = y == en C++?#
= asigna un valor a una variable; == compara dos valores y da verdadero o falso. Usar = dentro de un if es un error común porque asigna y la condición siempre resulta verdadera.
¿Qué escribe cout << “V\tI\n”;?#
Escribe V, un tabulador, I y luego baja una línea. \t es el tabulador y \n el salto de línea.
Con la función potencia(v, r) = v*v/r, ¿qué devuelve potencia(5, 25)?#
25 / 25 = 1, o sea 1 W. Se multiplica v por sí mismo (5 × 5 = 25) y se divide entre r (25).
Fuentes#
También en Electrónica