鱼C论坛

 找回密码
 立即注册
查看: 32|回复: 4

求助

[复制链接]
发表于 2026-5-14 11:09:03 From FishC Mobile | 显示全部楼层 |阅读模式

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

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

x
小甲鱼猜数字游戏中,设置三次循环,怎么样实现随着循环次数增加,显示机会次数随之减少
本萌新现在编写的代码如下:
xunhuan = 3
while xunhuan > 0
    temp = input("猜一下幸运数是哪个数字:")
    xunhua = xunhua - 1
    guess = int(temp)
    if guess == 888
        print("猜对了")
        print("但是么的奖励")
        break
    else:
        if guess > 888:
            print("猜得太大了")
        else:
            print("猜的太小了")
print("game over")
      

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-5-14 11:09:09 | 显示全部楼层
你的代码有两个问题:一是变量名写错了,xunhuanxunhua 不一致,导致循环不会减少次数;二是没有显示剩余机会。要想实现“随着循环次数减少,显示机会次数随之减少”,只需在每次循环开始时打印当前剩余次数即可。下面是修改后的代码:


  1. xunhuan = 3
  2. while xunhuan > 0:
  3.     print("你还有" + str(xunhuan) + "次机会")
  4.     temp = input("猜一下幸运数是哪个数字:")
  5.     xunhuan = xunhuan - 1
  6.     guess = int(temp)
  7.     if guess == 888:
  8.         print("猜对了")
  9.         print("但是么的奖励")
  10.         break
  11.     else:
  12.         if guess > 888:
  13.             print("猜得太大了")
  14.         else:
  15.             print("猜的太小了")
  16. print("game over")
复制代码


注意:循环次数初始为3,每次循环开始时剩余机会就是当前 xunhuan 的值(第一次显示3,第二次显示2,最后一次显示1)。另外记得给 whileif 后面加冒号。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-14 11:20:57 | 显示全部楼层
代码有几处小问题帮你改一下:\n\n1. while 后面要加冒号\n2. xunhuan 和 xunhua 变量名不一致,Python 认不出来\n3. if guess == 888 后面也要加冒号\n4. while 循环体要统一缩进\n\n修改后参考:\nxunhuan = 3\nwhile xunhuan > 0:\n    temp = input("猜一下幸运数是哪个数字:")\n    xunhuan -= 1\n    guess = int(temp)\n    if guess == 888:\n        print("猜对了")\n        break\n    elif guess > 888:\n        print("猜得太大了")\n    else:\n        print("猜的太小了")\n    if xunhuan == 0:\n        print("机会用完了")\nprint("game over")
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-5-14 14:31:53 | 显示全部楼层
本帖最后由 鱼师父 于 2026-5-14 14:34 编辑

变量名写的有点问题,思路是对的
想要每次显示剩余机会次数,可以这样写:

  1. # 猜数字 3 次机会,次数会递减显示
  2. xunhuan = 3  # 总共有3次机会

  3. while xunhuan > 0:
  4.    
  5.     temp = input("猜一下幸运数是哪个数字:")
  6.     guess = int(temp)

  7.     if guess == 888:
  8.         print("猜对了")
  9.         print("但是么的奖励")
  10.         break
  11.     else:
  12.         if guess > 888:
  13.             print("猜得太大了")
  14.         else:
  15.             print("猜的太小了")
  16.        
  17.         # 剩余次数显示
  18.         xunhuan -= 1
  19.         print(f"你还有 {xunhuan} 次机会!")

  20. print("game over")
复制代码

开始默认有机会,第一次不会显示当前还有几次机会,如果想要第一次显示,把“剩余次数显示”部分移动到循环开头即可
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 6 小时前 | 显示全部楼层
xunhuan = 3
print(f"您有3次猜测机会!")              #加上这一条显示一共可以猜几次
while xunhuan > 0:
    temp = input("猜一下幸运数是哪个数字:")
    xunhua = xunhua - 1                             #这里的变量名字调用错了
    guess = int(temp)
    if guess == 888:
        print("猜对了")
        print("但是么的奖励")
        break
    else:
        if guess > 888:
            print("猜得太大了")
        else:
            print("猜的太小了")
        print(f"您还有{xunhuan}次机会!")              #加上这一条实现随着循环次数增加,显示机会次数随之减少
print("game over")


应该......可以玩了吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-5-24 18:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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