def myfun(): lower = int(input("Enter Staring Value : ")) upper = int(input("Enter Ending Value : ")) for num in range(lower, upper + 1): # order of number order = len(str(num)) sum = 0 # find the sum of the cube of each digit temp = num while temp > 0: digit = temp % 10 sum += digit ** order temp //= 10 if num == sum: print(num) if __name__=="__main__": myfun()
Enter Staring Value : 1
Enter Ending Value : 2000
1
2
3
4
5
6
7
8
9
153
370
371
407
1634
Input: 120
Output: No
120 is not a Armstrong number.
1*1*1 + 2*2*2 + 0*0*0 = 9
Input: 1253
Output: No
1253 is not a Armstrong Number
1*1*1*1 + 2*2*2*2 + 5*5*5*5 + 3*3*3*3 = 723
Input: 1634
Output: Yes
1*1*1*1 + 6*6*6*6 + 3*3*3*3 + 4*4*4*4 = 1634