鱼C论坛

 找回密码
 立即注册
查看: 1102|回复: 7

[已解决]关于有限循环程序运行的问题

[复制链接]
发表于 2022-2-14 23:20:22 | 显示全部楼层 |阅读模式

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

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

x
print('--------游戏开始------------')

conts = 3

while conts > 0:
      temp = input('请输入数字:')
      guess= int(conts)
      
      conts = conts - 1
      
      if guess == 9:
            print('猜对了真聪明')
            print('甘拜下风')
            break
      else:
            if guess > 9:
                  print('大了,大了')
            else:
                  print('小了,小了')

   
print('游戏结束')
为什么我这个程序运行得出的结论一直是小了。就算输入正确的答案,也是输出小了、。。。求大佬解答!!!!!
最佳答案
2022-2-14 23:23:53
因为你的guess=int(conts)这里错了,应该是guess=int(temp)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-2-14 23:23:53 | 显示全部楼层    本楼为最佳答案   
因为你的guess=int(conts)这里错了,应该是guess=int(temp)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-14 23:32:33 | 显示全部楼层
int里面应该填temp,conts只是对总次数的限定而真正的变量是temp
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-15 18:34:06 | 显示全部楼层
为什么变更为guess = int(temp).  这个代码就无法运行了直接显示:
------游戏开始--------
Traceback (most recent call last):
  File "C:/Users/11715/Desktop/5.py", line 4, in <module>
    while couts > 0:
NameError: name 'couts' is not defined
我主要的目的是做一次有限的循环,请问我这个代码应该怎么优化编写?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-15 19:48:41 | 显示全部楼层
1171527218 发表于 2022-2-15 18:34
为什么变更为guess = int(temp).  这个代码就无法运行了直接显示:
------游戏开始--------
Traceback (m ...

报错是因为couts变量没被赋值
print('--------游戏开始------------')



while 1:
      temp = input('请输入数字:')
      guess= int(temp)
      
      
      
      
      if guess == 9:
            print('猜对了真聪明')
            print('甘拜下风')
            break                                         #注意这里 当数字才对是循环推出,猜不对就一直猜
      else:
            if guess > 9:
                  print('大了,大了')
            else:
                  print('小了,小了')

   
print('游戏结束')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-2-15 21:46:49 | 显示全部楼层
不弃_ 发表于 2022-2-15 19:48
报错是因为couts变量没被赋值

请问while为什么后面需要跟一个“1”?并且添加一个数值,让这个代码能够进行有限的循环?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-15 21:56:25 | 显示全部楼层
1171527218 发表于 2022-2-15 21:46
请问while为什么后面需要跟一个“1”?并且添加一个数值,让这个代码能够进行有限的循环?


他那个的意思是无限机会,直到猜对才用break跳出循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-16 09:49:11 | 显示全部楼层
1171527218 发表于 2022-2-15 21:46
请问while为什么后面需要跟一个“1”?并且添加一个数值,让这个代码能够进行有限的循环?

那你可以设置一个变量t,当变量的值变为零时结束循环
print('--------游戏开始------------')

t = 3

while t:
      temp = input('请输入数字:')
      guess= int(temp)
      
      
      
      
      if guess == 9:
            print('猜对了真聪明')
            print('甘拜下风')
            break                                         #注意这里 当数字才对是循环推出,猜不对就一直猜
      else:
            if guess > 9:
                  print('大了,大了')
            else:
                  print('小了,小了')
     t -= 1                          #t自减一
   
print('游戏结束')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-12 06:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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