水仙花数
水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个3位数,该数字每个位上数字的立方之和正好等于它本身,例如:13+53+33=153。
import time
start = time.time()
print(start)
print("100~999之间的水仙花数有:")
#
# for a in range(0,10): # a是三个位数字中最小的
# for b in range(a,10): # b是三个位数字中次小的
# for c in range(b,10): # c是三个位数字中最大的
# sum = a**3 + b**3 + c**3 #求三个数字的三次幂的和
# if sum//100 >= 1: # 只有在和大于100时才判断
# if sum == a*100 + b*10 + c:
# print(a*100+b*10+c)
# elif sum == a*100 + c*10 +b:
# print(a*100+c*10+b)
# elif sum == b*100+a*10+c:
# print(b*100+a*10+c)
# elif sum == b*100+c*10+a:
# print(b*100+c*10+a)
# elif sum == c*100+a*10+b:
# print(c*100+a*10+b)
# elif sum == c*100+b*10+a:
# print(c*100+b*10+a)
# else:
# continue
# else:
# continue
for num in range(100, 1000):
low = num % 10
mid = num // 10 % 10
high = num // 100
if num == low ** 3 + mid ** 3 + high ** 3:
print(num)
end = time.time()
print(end)
print("程序用时%f"%(end-start))