Program Python ke kontrole Armstrongova čísla

V tomto příkladu se naučíte zkontrolovat, zda je celé číslo n číslice Armstrongovým číslem.

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 +…

V případě Armstrongova počtu 3 číslic se součet kostek každé číslice rovná číslu samotnému. Například:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 je číslo Armstrong. 

Zdrojový kód: Zkontrolujte číslo Armstrong (na 3 číslice)

 # Python program to check if the number is an Armstrong number or not # take input from the user num = int(input("Enter a number: ")) # initialize sum sum = 0 # find the sum of the cube of each digit temp = num while temp> 0: digit = temp % 10 sum += digit ** 3 temp //= 10 # display the result if num == sum: print(num,"is an Armstrong number") else: print(num,"is not an Armstrong number") 

Výstup 1

 Zadejte číslo: 663 663 není Armstrongovo číslo 

Výstup 2

 Zadejte číslo: 407 407 je číslo Armstrong 

Zde požádáme uživatele o číslo a zkontrolujeme, zda se jedná o Armstrongovo číslo.

Musíme vypočítat součet krychle každé číslice. Inicializujeme tedy součet na 0 a získáváme každé číselné číslo pomocí operátoru modulu%. Zbývající část čísla, pokud je dělena 10, je poslední číslicí daného čísla. Vezmeme kostky pomocí exponentního operátoru.

Nakonec porovnáme součet s původním číslem a dospějeme k závěru, že jde o Armstrongovo číslo, pokud jsou stejné.

Zdrojový kód: Zkontrolujte Armstrong počet n číslic

num = 1634 # Changed num variable to string, # and calculated the length (number of digits) order = len(str(num)) # initialize sum sum = 0 # find the sum of the cube of each digit temp = num while temp> 0: digit = temp % 10 sum += digit ** order temp //= 10 # display the result if num == sum: print(num,"is an Armstrong number") else: print(num,"is not an Armstrong number") 

Hodnotu num ve zdrojovém kódu můžete změnit a znovu spustit a otestovat.

Zajímavé články...