Příklad k nalezení všech Armstrongových čísel mezi dvěma celými čísly. K vyřešení tohoto problému jsme použili příkaz vnořené smyčky a if.
Abychom porozuměli tomuto příkladu, měli byste znát následující témata programování v Pythonu:
- Příkaz Python if … else
- Python while Loop
Kladné celé číslo se nazývá Armstrongovo číslo řádu n if
abcd… = a n + b n + c n + d n +…
Například,
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 je číslo Armstrong.
Na této stránce se dozvíte, jak v Pythonu zkontrolovat, zda je číslo Armstrongovým číslem.
Zdrojový kód
# 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)
Výstup
153 370 371 407 1634
Zde jsme nastavili dolní limit 100 v proměnné dolní a horní limit 2000 v proměnné horní. Použili jsme pro smyčku k iteraci z proměnné dolní na horní. V iteraci se hodnota nižší zvýší o 1 a zkontroluje se, zda se jedná o Armstrongovo číslo nebo ne.
Rozsah můžete změnit a vyzkoušet změnou proměnných dolní a horní. Všimněte si, že proměnná dolní by měla být nižší než horní, aby tento program fungoval správně.