У овом примеру ћете научити да проверите да ли је н-цифрени цели број Армстронгов број или није.
Да бисте разумели овај пример, требало би да имате знање о следећим Питхон програмским темама:
- Питхон иф … елсе Изјава
- Питхон вхиле Лооп
Позитивни цели број назива се Армстронгов број реда н ако
абцд… = а н + б н + ц н + д н +…
У случају Армстронгова броја од 3 цифре, збир коцки сваке цифре једнак је самом броју. На пример:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 је Армстронгов број.
Изворни код: Проверите Армстронгов број (за 3 цифре)
# 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")
Резултат 1
Унесите број: 663 663 није Армстронгов број
Резултат 2
Унесите број: 407 407 је Армстронгов број
Овде од корисника тражимо број и проверавамо да ли је то Армстронгов број.
Морамо израчунати збир коцке сваке цифре. Дакле, суму иницијализујемо на 0 и сваки цифрени број добијамо помоћу оператора модула%. Остатак броја када је подељен са 10 је последња цифра тог броја. Узимамо коцке користећи експонентни оператор.
На крају упоређујемо збир са оригиналним бројем и закључујемо да је Армстронгов број ако су једнаки.
Изворни код: Проверите Армстронгов број од н цифара
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")
Можете да промените вредност нум у изворном коду и поново покренете да бисте га тестирали.