我是Python的新手,我正在尝试编写一个循环来找到LARGEST整数n所以n ^ 3< 12,000。我知道有些事情是错的,但我不知道是什么。请帮忙!
这是我的代码:
working = True
n = 12000
while working:
n = n - 1
if ((n * n * n) < 12000) and not working:
print(n)
答案 0 :(得分:2)
此代码中没有任何内容将working
的值设置为False
,因此working
始终为True
,因此循环永远不会退出。
答案 1 :(得分:1)
找到答案后,您需要将working
标记转为False
,就像这样
while working:
n = n - 1
if ((n * n * n) < 12000): # You don't need the `and not working:` check
print(n)
working = False
另外,在Python中,你可以找到像这样的数字的力量
n ** 3 == n * n * n
事实证明,您实际问题的答案是22
:)
答案 2 :(得分:0)
该行
while working:
表示只要working
为True
,您就会继续循环播放。你永远不会在循环中将working
设置为False
,因此它将永远循环。
你可能想要这样的东西:
while working:
n = n - 1
if ((n * n * n) < 12000):
working = False
print(n)