Progress

# Python program to check Armstrong Number: Easy Guide Problem Statement: Write a program in Python to check if a number is Armstrong number or not.

Description: A number is Armstrong number if the sum of all its individual digits to power n (number of digits) is equal to the number.

``abcd.. = a^n+b^n+c^n+d^n+...``

Example:

``````Input: 123
Output: It is NOT Armstrong Number.
Explanation: 123 is not equal to 1^3+2^3+3^3

Input: 371
Output: It is an Armstrong Number.
Explanation: 371 is equal to 3^3+7^3+1^3

Input: 1634
Output: It is an Armstrong Number.
Explanation: 1634 is equal to 1^4+6^4+3^4+4^4``````

Now you have understood what is an Armstrong number, its time to code a program in Python to check it.

## Python Program: Check Armstrong Number

Copy
``````num = input("Enter any Number: ")

#Use sum function to find sum of (digits raised to power n) in an list
sumOfPower = sum([int(i)**(len(num)) for i in num])

if(int(num)==sumOfPower):
print("{} is armstrong number.".format(num))
else:
print("{} is Not armstrong number.".format(num))``````
Output
```Enter any Number: 1634
1634 is armstrong number.```

We first take the input and then calculate the sum of individual digits having power n (length of number) and print them.

Line 4 contains all the logic of the code. We have used list comprehension to create a list of digits which is the argument of `sum()` function.

If we break the list comprehension then it gives the following code.

Copy
``[int(i)**(len(num)) for i in num] # [1*1*1*1, 6*6*6*6, 3*3*3*3, 4*4*4*4]``

It means to create a list of integers raised to the power of the total length of number. Then the `sum()` function returns the sum of all elements in the list.

## One-Line Solution in Python (Advanced)

Copy
``````num = input("Enter any Number: ")

print(int(num)==sum([int(i)**(len(num)) for i in num]))``````
Output
```Enter any Number: 1634
True```

This is a short and concise solution in Python to check Armstrong number. The logic is similar as described above.

Only changed thing is that we removed the if-else statement and put the comparison inside the print statement.

If you find anything confusing let me know in the comments.

Share the Post ;)

Related Posts