En este post veremos un ejercicio de C++ o CPP en donde se piden números al usuario hasta que el mismo desea mostrar la sumatoria de los números.
Es decir, vamos a sumar números hasta que se escriba un carácter de salida.
Para ello vamos a usar el ciclo while, en donde se van a escanear números hasta que el usuario escriba el signo de =
; cuando el ciclo se rompa simplemente se muestra la suma de los números.
Requisitos y recomendaciones
Para resolver este ejercicio vamos a escanear la cadena, y además, vamos a convertir una cadena a un entero. Por lo tanto recomiendo:
Ahora sí comencemos.
Pedir números y al final mostrar la suma de los mismos
Para comenzar declaramos nuestra sumatoria que es 0 al inicio, así como el número entero que será el resultado de convertir la cadena a entero y una cadena que será lo que el usuario escriba:
string entrada = "";
int sumatoria = 0, numero = 0;
Ahora hacemos un ciclo while
infinito, que se romperá usando break
en caso de que la entrada sea el carácter =
.
while (true) {
cout << "Escribe un numero o '=' para ver la suma:\n";
cin >> entrada;
if (entrada == "=") break;
sumatoria += stoi(entrada);
}
Dentro del ciclo imprimimos un mensaje para que el usuario ingrese el número o el carácter. Después, en la línea 4 comprobamos si es el carácter para terminar el ciclo y en ese caso lo rompemos.
Si no se rompe, entonces le sumamos a sumatoria lo que resulte de llamar a stoi.
Al terminar el ciclo imprimimos la sumatoria:
cout << "La suma es " << sumatoria;
El código completo queda así:
#include <iostream>
using namespace std;
int main() {
string entrada = "";
int sumatoria = 0, numero = 0;
while (true) {
cout << "Escribe un numero o '=' para ver la suma:\n";
cin >> entrada;
if (entrada == "=") break;
sumatoria += stoi(entrada);
}
cout << "La suma es " << sumatoria;
}
Al ejecutarlo pedirá números de manera infinita hasta que el usuario escriba el carácter que rompe el ciclo. En ese caso se imprime la sumatoria, como se comprueba en la siguiente imagen:
Aprende más sobre C++ aquí.