Hello readers, welcome back, here is an another simple python program which checks whether a number is an Armstrong number or not.

Generally, a number is said to be an Armstrong number if the sum of cubes of the digits is equal to its original number.

For Example : 153 is an Armstrong number as its sum of cubes of each digit 1^{3} + 5^{3} + 3^{3} = 153 where as 456 is not as its sum of cubes of each digit is not 456.

#### Armstrong number – Code Visualization

#### Task :

Python program to check an integer number is an Armstrong number or not.

#### Approach :

- Read an input number using
`input()`

or`raw_input()`

. - Check whether the value entered is integer or not.
- Check input_num is greater than 0.
- Initialise a variable named
`arm_num`

to 0. - Find
`remainder`

of the input number by using mod (%) operator to get each digit in the number. - Now cube each digit and add it to
`arm_num`

. - Floor Divide the number by 10.
- Repeat steps 5. 6. 7 until the the input_num is not greater than 0.
- If
`input_num`

is equal to`arm_num`

, print number is ARMSTRONG. - When
`input_num`

is not equals to`arm_num`

, the number is NOT an Armstrong number.

#### Program :

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
input_num = (input("Enter any number: ")) try: arm_num = 0 val = int(input_num) while val > 0: reminder = val % 10 arm_num += reminder ** 3 val //= 10 if int(input_num) == arm_num: print(input_num, 'is an ARMSTRONG number') else: print(input_num, 'is NOT an armstrong number') except ValueError: print("That's not a valid number, Try Again !") |