PDA

View Full Version : [C++]Somma di cifre


Ale88
11-10-2004, 20:08
Vorrei chiedere gentilmente a Voi guru della programmazione di risolvermi un problema.:ave:
Mi interesserebbe sapere come, in C++, posso eseguire la somma delle cifre che compongono un numero.
Es: 29=2+9=11
53=5+3=8
Vi ringrazio per ogni eventuale risposta:D

ilsensine
11-10-2004, 20:29
int somma(const char* numero) {
int ret = 0;
while(*numero)
ret += *(numero++)-'0';
return ret;
}

VegetaSSJ5
11-10-2004, 20:33
non conosco c++ cmq penso dovrebbe funzionare lo stesso.
se parti da un numero (e non da una stringa i cui caratteri sono numeri) puoi usare la funzione

char *itoa(int num)

per trasformare il numero in una stringa di caratteri e quindi usare la funzione che ha postato ilsensine.

fek
11-10-2004, 20:41
unsigned int ComputeNumberSum(
unsigned int x)
{
unsigned int number = x;
unsigned int sum = 0;

do
{
sum += number % 10;
number /= 10;
}
while (0 != number);

return sum;
}