自幂数,也称Armstrong数,是指一个 n 位数,它的每个位上的数字的n 次幂之和等于它本身。
要求程序自动计算范围内(1~10000000)所有的自幂数。
Armstrong_num = []
for num in range(1,10000000,1):
n = len(str(num))
lst = []
t = 10
for i in range(n):
r = num // t**i % 10
lst.append(r)
m = len(lst)
s = 0
for j in range(m):
s = s + lst[j]**m
if s == num:
Armstrong_num.append(num)
print(Armstrong_num)