Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Rugan

#1
Ya entiendo, me había obsesionado con hacerlo de otra forma y no me había dado cuenta de que era así de fácil. Gracias!
#2
El tema es que quiero hacer un programa en C++ que haga lo siguiente:

1. Introduzco un número
2. Suma los dígitos de ese número que he introducido. Ejemplo: si introduzco 34, pues suma 3 + 4 = 7.
3. Vuelve a sumar los dígitos de la suma anterior en caso de esta suma vuelva a tener más de un dígito (es decir en caso de que sea mayor que 9). Ejemplo: si introduzco 445, pues suma 4 + 4 + 5 = 13 (como en el paso 2) y luego además suma 1 + 3 = 4, ya que 13 > 9. Y quiero que lo haga repetidamente hasta que ya no puedan salir más números de dos cifras en la suma.

Para ello quiero usar funciones. La primera parte (hasta 2) me sale, pero el punto 3 no consigo hacerlo. He intentado llamar a la función sumacifras (la funcion que hace el punto 2) desde la función digitomagico (la que quiero que haga el punto 3) para hacer algo con while pero parece ser que no se puede. ¿Alguien me explica cómo se hace? aquí dejo lo que tengo:

Código (c++) [Seleccionar]

#include <iostream>
using namespace std;
int sumacifras(int numero);
int digitomagico();

int main()
{
int numero;

cout << "Introduce un entero positivo: ";
cin >> numero;

cout << "La suma de los digitos es: " << sumacifras(numero) << endl;
cout << "El digito magico es: " << digitomagico() << endl;

system("pause");
return 0;
}

int sumacifras(int numero)
{
int suma = 0;

while (numero != 0){
suma = suma + (numero % 10);
numero = (numero / 10);
}

return suma;
}

int digitomagico()
{
   
}



Gracias de antemano