06. Es. svolto: sommare le cifre
Traccia:
Scrivere un programma che richiede all'utente un numero intero e somma le cifre che lo compongono.
Svolgimento:
#include <stdio.h>
int main()
{
int N, quoziente, numero, cifra, somma;
printf("Inserire un numero intero: ");
scanf("%d", &N);
numero = N;
somma = 0;
while (numero>0) {
quoziente = numero/10;
cifra = numero - (quoziente * 10);
somma = somma + cifra;
numero = quoziente;
}
printf("La somma delle cifre e' %d\n", somma);
return 0;
}
Commento:
Nel ciclo while le istruzioni
quoziente = numero/10;
cifra = numero - (quoziente * 10);
banalmente individuano la cifra meno significativa del numero contenuto nella variabile numero.
Prima di completare il ciclo while viene reimpostato il valore della variabile numero, assegnando il quoziente della divisione (di fatto viene eliminata la cifra meno significativa).
numero = quoziente;
Nella successiva iterazione si ripetono le stesse operazione con l'unica differenza che il nuovo numero ha una cifra in meno di quello considerato in precedenza.
Sito: 7ecnologie
Sezione: 08. C language
Capitolo: 02. Introduzione al C
Paragrafo: 06. Ciclo while
Approfondimento: 06. Es. svolto: sommare le cifre
Indice dei capitoli: 00. Risorse - 01 Ambiente di sviluppo - 02. Introduzione al C - 03. Le librerie - 04. Tutorial - 05. Esercizi svolti - 98. Esercizi
Indice dei paragrafi: 01. Hello World - 02. Variabile di tipo int - 03. Input da tastiera - 04. Controllo condizionale if - 05. Operatori logici - 06. Ciclo while - 07. Operatore modulo - 08. Array - 09. Ciclo for - 10. Ciclo do/while - 11. Variabili di tipo float - 12. Funzione random() - 13. Impostazione del set di caratteri - 14. Definizione di funzioni - 15. Passaggio di parametri: gli array - 16. Variabili: visibilità e durata - 17. Il tipo char - 18. I file - 19. Funzioni matematiche
Indice degli approfondimenti: 01. Es. svolto: media - 02. Es. svolto: numero binario - 03. Es. svolto: menu - 04. Es. svolto: controllo dell'input - 05. Tutorial: integrazione di più funzionalità - 06. Es. svolto: sommare le cifre - 07. Istruzione break: numero primo