Program w Pythonie do znajdowania numeru Armstronga w przedziale czasu

Przykład znalezienia wszystkich liczb Armstronga między dwiema liczbami całkowitymi. Aby rozwiązać ten problem, użyliśmy zagnieżdżonej pętli i instrukcji if.

Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w Pythonie:

  • Python if… else Instrukcja
  • Python while Loop

Dodatnią liczbę całkowitą nazywamy liczbą Armstronga rzędu n, jeśli

abcd… = a n + b n + c n + d n +…

Na przykład,

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 to liczba Armstronga. 

Odwiedź tę stronę, aby dowiedzieć się, jak sprawdzić, czy liczba jest liczbą Armstronga, czy nie w Pythonie.

Kod źródłowy

 # 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) 

Wynik

 153 370 371 407 1634 

Tutaj ustawiliśmy dolną granicę 100 w zmiennej dolnej i górnej granicy 2000 w zmiennej górnej. Użyliśmy pętli do iteracji od zmiennej dolnej do górnej. W iteracji wartość niższa jest zwiększana o 1 i sprawdzana, czy jest to liczba Armstronga, czy nie.

Możesz zmienić zakres i przetestować, zmieniając dolną i górną zmienną. Uwaga, zmienna lower powinna być mniejsza niż górna, aby ten program działał poprawnie.

Interesujące artykuły...