python求任意范围内水仙花数

代码:

#水仙花数
num=int(input('请输入任意范围,将会得到其范围内的所有水仙花数:'))
for i in range(1,num+1):
    cifang = len(str(i))            #这个数的位数,即为次方数
    total = 0                       #各位数N次方之和
    j = i                           #因为后面i会用做比较,所以我不更改i的值
    last_w = 0                      #这个数的最后一位数
    while j > 0 and cifang > 2:
        last_w = j % 10             #对10求余,表示这个数的最后一个数
        j = j // 10                 #去掉最后一位数
        total += last_w ** cifang   #计算各位的N次方之和
    if total == i:                  #如果各位数的N次方之后与原数i相等,就打印
        print(i)

运行结果:

python 求任意范围内水仙花数

创新互联:于2013年创立为各行业开拓出企业自己的“网站建设”服务,为上1000家公司企业提供了专业的成都网站建设、成都网站制作、网页设计和网站推广服务, 按需开发网站由设计师亲自精心设计,设计的效果完全按照客户的要求,并适当的提出合理的建议,拥有的视觉效果,策划师分析客户的同行竞争对手,根据客户的实际情况给出合理的网站构架,制作客户同行业具有领先地位的。


本文名称:python求任意范围内水仙花数
文章地址:http://scyanting.com/article/geoipp.html