In this Python program, we will learn how to check if the given number is a strong number or not.
A Strong Number is a number in which the sum of the factorial of individual digits of that number is equal to the original number. For examples : 1, 2, 145, 40585, etc.
Now take a look at that example, we have a number 145 and its digits are 1, 4, and 5.
Now we find the factorial of each digit like we do
1! = 1 = 1
4! = 4*3*2*1 = 24
5! = 5*4*3*2*1 = 120
Now their sum = 120 + 24 + 1 = 145 which is equal to the Original Number.
Hence We can Say that 145 is a Strong Number.
Here is the source code of the program to check if the given number is a strong number or not.
# Python Program to Check if the Given Number is a Strong Number or Not - Using While Loop
# Take The Input From the user
Number = int(input("Enter any Number: "))
Sum = 0
Temp = Number
while(Temp > 0):
Factorial = 1
i = 1
Reminder = Temp % 10
while(i <= Reminder):
Factorial = Factorial * i
i = i + 1
print("\nFactorial of %d = %d" %(Reminder, Factorial))
Sum = Sum + Factorial
Temp = Temp // 10
print("\nSum of Factorials of a Given Number %d = %d" %(Number, Sum))
if (Sum == Number):
print("%d is a Strong Number" %Number)
else:
print("%d is not a Strong Number" %Number)
Enter any Number: 145
Factorial of 5 = 120
Factorial of 4 = 24
Factorial of 1 = 1
Sum of Factorials of a Given Number 145 = 145
145 is a Strong Number
Enter any Number: 251
Factorial of 1 = 1
Factorial of 5 = 120
Factorial of 2 = 2
Sum of Factorials of a Given Number 251 = 123
251 is not a Strong Number
# Python Program to Check if the Given Number is a Strong Number or Not - Using For Loop
# Take the Input from the User
Number = int(input("Enter any Number: "))
Sum = 0
Temp = Number
while(Temp > 0):
Factorial = 1
Reminder = Temp % 10
for i in range(1, Reminder + 1):
Factorial = Factorial * i
print("Factorial of %d = %d" %(Reminder, Factorial))
Sum = Sum + Factorial
Temp = Temp // 10
print("\nSum of Factorials of a Given Number %d = %d" %(Number, Sum))
if (Sum == Number):
print("%d is a Strong Number" %Number)
else:
print("%d is not a Strong Number" %Number)
Enter any Number: 145
Factorial of 5 = 120
Factorial of 4 = 24
Factorial of 1 = 1
Sum of Factorials of a Given Number 145 = 145
145 is a Strong Number
Enter any Number: 256
Factorial of 6 = 720
Factorial of 5 = 120
Factorial of 2 = 2
Sum of Factorials of a Given Number 256 = 842
256 is not a Strong Number
Comments