Programma numero Armstrong in C
Un numero Armstrong è un numero uguale alla somma dei cubi delle sue singole cifre. Ad esempio, 153 è un numero Armstrong come -
153 = (1)3 + (5)3 + (3)3
153 = 1 + 125 + 27
153 = 153
Algoritmo
L'algoritmo di questo programma è molto semplice -
START
Step 1 → Take integer variable Arms
Step 2 → Assign value to the variable
Step 3 → Split all digits of Arms
Step 4 → Find cube-value of each digits
Step 5 → Add all cube-values together
Step 6 → Save the output to Sum variable
Step 7 → If Sum equals to Arms print Armstrong Number
Step 8 → If Sum not equals to Arms print Not Armstrong Number
STOP
Pseudocodice
Possiamo redigere uno pseudocodice dell'algoritmo di cui sopra come segue:
procedure armstrong : number
check = number
rem = 0
WHILE check IS NOT 0
rem ← check modulo 10
sum ← sum + (rem)3
divide check by 10
END WHILE
IF sum equals to number
PRINT armstrong
ELSE
PRINT not an armstrong
END IF
end procedure
Implementazione
Di seguito viene fornita l'implementazione di questo algoritmo. Puoi cambiare il valore della arms
variabile ed eseguire e controllare il tuo programma -
#include <stdio.h>
int main() {
int arms = 153;
int check, rem, sum = 0;
check = arms;
while(check != 0) {
rem = check % 10;
sum = sum + (rem * rem * rem);
check = check / 10;
}
if(sum == arms)
printf("%d is an armstrong number.", arms);
else
printf("%d is not an armstrong number.", arms);
return 0;
}
Produzione
Il risultato del programma dovrebbe essere:
153 is an armstrong number.