cr161680 发表于 2018-2-5 20:58:59

求 100~999 之间的所有水仙花数

如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数

for i in range(0,10):
    for j in range(0,10):
      for k in range(0,10):
            if i * 100 + j * 10 + k == i ** 3 + j ** 3 + k ** 3:
                if 100 < i * 100 + j * 10 + k <999:
                  print(i * 100 + j * 10 + k)

BngThea 发表于 2018-2-5 21:07:47

可以,i从1开始循环就不需要if判断了

cr161680 发表于 2018-2-5 21:38:58

对,百位上不会是0,这样可以少计算很多,谢谢

wgz890813 发表于 2018-2-6 14:43:50

很棒!
页: [1]
查看完整版本: 求 100~999 之间的所有水仙花数