Principiante · Entrada y salida

Suma de dos números

Lee dos enteros e imprime su suma. El «Hola Mundo» de resolver problemas: la gracia es dominar el ciclo leer → calcular → imprimir.

En una fraseLee dos enteros de una línea e imprime a + b: el programa completo más pequeño del sitio, con los negativos como único caso límite.

El problema

Entrada: una línea con dos enteros a y b, separados por un espacio (−10⁹ ≤ a, b ≤ 10⁹).

Salida: una línea con a + b.

Ejemplos:

EntradaSalida
3 47

Tu solución

main.cpp — tu solución
Entrada personalizada para «Ejecutar mi entrada»

La corrección corre en tu navegador contra pruebas ocultas. Un bucle infinito se corta a los 3 segundos — aun así, asegúrate de que todo bucle tenga salida. Tu código se guarda solo mientras escribes.

¿Atascado? Pistas

Pista 1 — la parte de leer

cin >> a >> b; lee los dos números de una vez — >> se salta el espacio de en medio automáticamente.

Pista 2 — la parte de imprimir

cout << a + b << endl; — puedes calcular dentro de la propia salida, sin variable extra.

Solución (¡inténtalo primero!)
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    cout << a + b << endl;
    return 0;
}

Todo el problema es un ciclo del patrón main: leer → calcular → imprimir. El siguiente paso es convertirlo en un problema de bucles.

Análisis profundo

Por qué funciona

Todo el programa es una sola tubería: leer, calcular, imprimir. Cada problema más difícil de este sitio es esa misma tubería con un bucle en el medio: aprende a ver las tres partes y el resto son detalles.

El coste

O(1) de tiempo y de espacio. Dos int entran, uno sale; nada crece con la entrada.

Dónde falla

  • Leer con cin >> a >> b en el orden equivocado compila y además imprime un número: solo que el incorrecto. Sigue los valores, no la sintaxis.
  • Dos mil millones más dos mil millones desbordan int y dan negativo. Aquí los datos son pequeños, pero long long es el hábito que sobrevive.

Siguiente paso

La misma tubería con un bucle en medio: Suma de 1 a N.

Dos cosas para recordar

  • Todo programa es leer → calcular → imprimir. Nombra las tres partes antes de escribir código.
  • El desbordamiento es silencioso: int se detiene en 2.147.483.647 y da la vuelta.
🐞 Esta versión falla: ábrela y pruébala

Imprime sum = 7: el juez solo quiere el número

#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    cout << "sum = " << a + b << endl;
    return 0;
}