Python中求水仙花数,与Python 100 days的对比

水仙花数

水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个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))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值