vp_niklaus
vp_niklaus
采纳率0%
2017-09-26 07:55 阅读 1.2k

萌新求教python水仙花问题

题目“题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身”
代码如下:
for x in range(1,10):
for y in range(0,10):
for z in range(0,10):
a = x**3
b = y**3
c = z**3
d = x + y * 10 + c * 100
if d == a + b + c:
print d
输出没有结果,求教为何

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • engreal engreal 2017-09-26 08:25

    是不是缩进有问题?
    图片说明

    点赞 评论 复制链接分享
  • eagle1024 eagle1024 2017-09-27 02:12
     for x in range(1,10):
        for y in range(0,10):
            for z in range(0,10):
                a = x**3
                b = y**3
                c = z**3
                d = x + y * 10 + c * 100
                if d == a + b + c:
                    print d
    
    点赞 评论 复制链接分享
  • z390332412 扶我起来我还能敲 2017-09-27 03:10

    水仙花数 例 1^3+5^3+3^3 = 153

    ls = []
    a = int(input("请输入任意数字返回范围内的水仙花数:"))
    for x in range(10, a):
    j = 0
    for i in str(x):
    j += int(i) ** len(str(x))
    if j == x:
    ls.append(x)
    print(ls)

    点赞 评论 复制链接分享
  • z390332412 扶我起来我还能敲 2017-09-27 03:14
    # 水仙花数 例 1^3+5^3+3^3 = 153
    
    ls = []
    a = int(input("请输入任意数字返回范围内的水仙花数:"))
    for x in range(10, a):
        j = 0
        for i in str(x):
                    y = len(str(x))
            j += int(i) ** y
        if j == x:
            ls.append(x)
    print(ls)
    
    
    点赞 评论 复制链接分享

相关推荐