鱼C论坛

 找回密码
 立即注册
查看: 1115|回复: 9

为什么没有输出任何数据呢?困惑

[复制链接]
发表于 2019-5-11 14:24:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
for x in range(1,9):
    for y in range(0,9):
        for z in range(0,9):
            number = 100*x + 10*y + z
            while number <= 999 :
                if number == (x**3 + y**3 + z**3):
                    print(number)
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-5-11 15:43:34 | 显示全部楼层
死循环了
while number <= 999 :
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-11 16:16:04 | 显示全部楼层
    楼主设计 while 循环的意图是什么,只有删掉才对!
  1. for x in range(1 , 9):
  2.     for y in range(9):
  3.         for z in range(9):
  4.             number = 100 * x + 10 * y + z
  5.             if number == x ** 3 + y ** 3 + z ** 3:
  6.                 print(number)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-11 17:53:19 | 显示全部楼层
按照我的理解,这个程序是找到一个每一位数的立方之和等于这个数
但是最后的while是多余的,直接判断就行
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-12 16:18:21 | 显示全部楼层
My_A 发表于 2019-5-11 17:53
按照我的理解,这个程序是找到一个每一位数的立方之和等于这个数
但是最后的while是多余的,直接判断就行
...

谢谢,还有个问题,即使while多余,感觉也应该输出数据。 毕竟那个print在循环内呀。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-12 16:19:04 | 显示全部楼层
塔利班 发表于 2019-5-11 15:43
死循环了
while number

谢谢,是个死循环但是while循环内的print为什么不输出呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-12 16:19:35 | 显示全部楼层
jackz007 发表于 2019-5-11 16:16
楼主设计 while 循环的意图是什么,只有删掉才对!

谢谢,应该删掉,但是while内的print为什么不输出呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-12 16:20:13 | 显示全部楼层
论坛牛逼呀,有效率!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-12 16:44:41 | 显示全部楼层
本帖最后由 jackz007 于 2019-5-12 16:46 编辑
小白码农超 发表于 2019-5-12 16:19
谢谢,应该删掉,但是while内的print为什么不输出呢?


      因为你设计的 while 循环就是一个陷阱,在程序第一次进入的时候 number 不可能正好就是水仙花数,而你在循环里面又没有改变 number 的值,这样,程序肯定不会显示数值,而且,无法脱离 while 循环,如何能有机会显示水仙花数?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-12 17:46:06 | 显示全部楼层
jackz007 发表于 2019-5-12 16:44
因为你设计的 while 循环就是一个陷阱,在程序第一次进入的时候 number 不可能正好就是水仙花数 ...

厉害厉害! 懂了,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-15 18:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表