tgctg2020 发表于 2020-12-16 15:24:39

为什么会没有打印结果?

i=100
while i<=999:
    if i==(i//100)**3+(i//10)**3+(i)**3:
      print(i)
    i=i+1

为什么会没有打印结果??

昨非 发表于 2020-12-16 15:31:34

你的代码不对
i//100是百位数没错
i//10是一个两位数 ,所以错了
建议分开写

详细方法请参考:
<font color="red">[已解决]</font>pyO基础入门课后题 水仙花数
https://fishc.com.cn/thread-185079-1-1.html
(出处: 鱼C论坛)
这里有三种方法
满意的话请设置为最佳答案哈

jackz007 发表于 2020-12-16 15:32:26

本帖最后由 jackz007 于 2020-12-16 15:34 编辑

    这一句
    if i==(i//100)**3 + ((i//10)**3+(i)**3:
    改为:
    if i == (i // 100) ** 3 + ((i % 100) // 10) ** 3 + (i % 10) ** 3:

tgctg2020 发表于 2020-12-16 19:13:44

昨非 发表于 2020-12-16 15:31
你的代码不对
i//100是百位数没错
i//10是一个两位数 ,所以错了


谢谢.
页: [1]
查看完整版本: 为什么会没有打印结果?