Esempio per trovare tutti i numeri Armstrong tra due interi. Per risolvere questo problema, abbiamo usato il ciclo annidato e l'istruzione if.
Per comprendere questo esempio, dovresti avere la conoscenza dei seguenti argomenti di programmazione Python:
- Istruzione Python if … else
- Python while Loop
Un numero intero positivo è chiamato numero Armstrong di ordine n se
abcd … = a n + b n + c n + d n + …
Per esempio,
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 è un numero Armstrong.
Visita questa pagina per scoprire come controllare se un numero è un numero Armstrong o meno in Python.
Codice sorgente
# Program to check Armstrong numbers in a certain interval lower = 100 upper = 2000 for num in range(lower, upper + 1): # order of number order = len(str(num)) # initialize sum sum = 0 temp = num while temp> 0: digit = temp % 10 sum += digit ** order temp //= 10 if num == sum: print(num)
Produzione
1553 370 371 407 1634
Qui, abbiamo impostato il limite inferiore 100 nella variabile inferiore e il limite superiore 2000 nella variabile superiore. Abbiamo usato il ciclo for per iterare dalla variabile inferiore a quella superiore. Nell'iterazione, il valore di lower viene aumentato di 1 e viene verificato se si tratta di un numero Armstrong o meno.
È possibile modificare l'intervallo e testare modificando le variabili inferiore e superiore. Nota, la variabile inferiore dovrebbe essere inferiore a quella superiore affinché questo programma funzioni correttamente.