为了账号安全,请及时绑定邮箱和手机立即绑定

这个程序不断地一次又一次地给出答案,我找不到办法阻止它

这个程序不断地一次又一次地给出答案,我找不到办法阻止它

湖上湖 2023-07-05 10:30:02
import randomn = int (input('guess the number'))randomnumber = random.randint(1,100)while True:    if n == randomnumber:        print ('you have won')        break       elif randomnumber > n :        print('you guessed too high')            else :        print ('you guessed too low')         print ('thank you for playing')
查看完整描述

4 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

循环永远不会结束,因为 n 和 randomnumber 都没有在循环内更新。尝试插入n = int (input('guess the number'))循环内部。



查看完整回答
反对 回复 2023-07-05
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

如果按Control+ ,任何 Python 程序都可能被破坏C。此外,我认为你想要的是程序应该在用户每次出错时询问用户。因此,在循环结束时while,重复询问用户 的值的代码行n。


正如乔纳森所说,最好将该input语句移至循环顶部并删除input程序顶部的第一个语句。


import random


randomnumber = random.randint(1,100)


while True:

    n = int (input('guess the number'))

    if n == randomnumber:

        print ('you have won')

        break   

    elif randomnumber > n :

        print('you guessed too high')

        

    else :

        print ('you guessed too low')

        

 

print ('thank you for playing')


查看完整回答
反对 回复 2023-07-05
?
隔江千里

TA贡献1906条经验 获得超10个赞

import random


n = int (input('guess the number'))


randomnumber = random.randint(1,100)


if n == randomnumber:

    print ('you have won')

elif randomnumber > n :

    print('you guessed too high')

        

else:

    print ('you guessed too low')

        

print ('thank you for playing')


查看完整回答
反对 回复 2023-07-05
?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

它会重复自身,因为它处于“while true”中,是一个循环,并且它将永远重复自身以解决它,删除 while true 并打破语句希望有帮助!



查看完整回答
反对 回复 2023-07-05
  • 4 回答
  • 0 关注
  • 139 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信