mathlover24
Genius
1 min. di lettura
Vota 3 / 5

Concetti Chiave

  • L'algoritmo in C++ calcola la somma delle cifre di un numero intero dato come input.
  • Utilizza l'operazione modulo per ottenere l'ultima cifra del numero, che viene aggiunta a una somma parziale.
  • Il numero viene ridotto rimuovendo l'ultima cifra, ripetendo il processo fino a quando tutte le cifre sono state sommate.
  • Il programma utilizza un ciclo while per iterare attraverso le cifre del numero finché il numero stesso è maggiore di uno.
  • Il codice include commenti che spiegano ogni passaggio, rendendo il processo di calcolo comprensibile e trasparente.

C++ - Somma delle cifre di un numero intero

Il seguente algoritmo scritto in C++ permette, dato un numero intero N a scelta nostra, calcola la somma delle sue cifre.
Esempio:
Input: 7814
Output: 7 + 8 + 1 + 4 = 20
Il "ragionamento" che faremo eseguire all'esecutore è quello di "staccare" ogni cifra.
In che modo?
Considero N, e sia R: N modulo 10.
In matematica si dice che:
[math]N ≡ R (mod 10)[/math]
, dove R è l'ultima cifra del numero che dobbiamo tenere in considerazione per sommarne le cifre.
Ritornando a parlare del caso analizzato in precedenza:
[math]7814 ≡ 4 (mod 10)[/math]
Una volta fatto ciò, per staccare l'altra cifra, togliamo R da N e lo dividiamo per 10.
Ripetiamo lo stesso procedimento finché le cifre di N non sono terminate.
Ecco il codice, con la spiegazione di ogni passaggio:

#include
#include

using namespace std;

int main()
{
int N, R, K; //Introduciamo tre variabili N, R, K
cout cin >> N; //Si inserisce il numero intero di cui vogliamo calcolare la somma delle cifre, lo chiamiamo N
K = 0; //K sta per somma cifre, e parte da 0
cout while(N > 1){ //Mentre n è maggiore di 1:
R = N % 10; //Considero R come N modulo 10
K = R + K; //Si somma R a K
N = (N - R) / 10; //N diventa N-R diviso per 10
}

cout system("pause"); //Fine del programma
}

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community