Python--数字炸弹游戏

Python–数字炸弹游戏

数字炸弹游戏规则:

在一个数字范围内,有一个数字作为炸弹,谁猜中这个炸弹就被惩罚.比如范围是1~99,
炸弹是60,然后猜了一个数字是30,30不是炸弹,那么现在猜数字的范围就缩小到30~100,
又猜了一个数字80,80也不是炸弹,那么现在又缩小范围到30~80,每次猜不能猜边界上的值,
直到你或电脑猜中这个炸弹,然后就会受到惩罚,游戏结束

要求:你先输入一个数如果不是炸弹,然后让电脑缩小范围输入一个数字,如果还不是炸弹你再次缩小范围输入,下来又到电脑,依次反复,直到找到炸弹

O. 首先找到核心思路

生成炸弹
打印炸弹范围
自己猜一次
缩小炸弹范围
电脑生成随机数(电脑猜一次)
继续缩小炸弹范围
循环这些操作,直到炸弹爆炸,游戏结束!

代码

import random
x =random.randint(1,100)
print("炸弹数字XX")
start = 1#定义最小范围
end = 100#定义最大范围
while True:
    num = int(input("输入{}-{}之间的整数:".format(start, end)))
    if num>x:
        end = num
        print("你猜大了")
    elif num == x:
        print("你输了,游戏结束!")
        break
    elif num < x:
        start = num
        print("你猜小了")
#----------------------------computer(小红)
    computer = random.randint(start,end)
    print("小红认为炸弹是:",computer)
    if computer>x:
        end = computer
        print("小红猜大了")
    elif computer == x:
        print("你赢了")
        print("游戏结束")
        break
    elif computer<x:
        start=computer
        print("小红猜小了")

核心代码使用了比较函数,用来更新炸弹范围

   用random生成(1-100)中的随机数(代表炸弹)
   用两个变量定义炸弹上下限
   用input接受你猜的数,用if判断如果你猜的数大于炸弹就把你猜的数赋给炸弹上限end(更改炸弹上限),如果等于炸弹,游戏结束!如果小于炸弹,把你猜的值赋给炸弹下线start
   用random生成一个随机数,让小红猜一次,同样用if判断,大与炸弹值更改上限,小于缩小下限。直到游戏结束!

================== 运行结果 ==================
运行结果

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
数字游戏是一种玩家与电脑进行互动的游戏,在游戏开始时,电脑会随机生成一个1-1000之间的数字作为答案。然后玩家通过键盘输入猜测的数字,电脑会根据玩家的猜测给出相应的提示,提示玩家猜的数字是太大了还是太小了,直到玩家猜中答案或者猜测次数达到上限。如果玩家猜中了答案,游戏结束并给出恭喜的提示,如果猜测次数达到上限,游戏也会结束并给出相应的提示。 以下是一个Python的猜数字游戏的示例代码: ```python import random def guess_number(): answer = random.randint(1, 1000) chances = 10 print("游戏规则:") print("1、随机生成一个1-1000之间的数。") print("2、10次猜数字的机会,如果没有猜正确,游戏结束。") print('3、输入字母"q",则退出游戏。') print() for i in range(chances): print(f"第{i + 1}次猜数字") guess = input("请输入[1-1000]之间的数字:") if guess.isdigit(): guess = int(guess) if guess < answer: print(f"您输入的数字太小了,您还有{chances - i - 1}次机会,请重新输入:") elif guess > answer: print(f"您输入的数字太大了,您还有{chances - i - 1}次机会,请重新输入:") else: print(f"你只用了{i + 1}次就猜对啦,好腻害呀~") break elif guess == "q": print("退出游戏!") break else: print("输入的内容必须为整数,请重新输入:") if i + 1 == chances: print("您输入已经超过10次,游戏结束!") guess_number() ``` 这个示例代码中,我们使用了`random`模块来随机生成一个1-1000之间的数字作为答案。在每次循环中,根据玩家的猜测与答案的比较给出相应的提示,同时记录猜测的次数。如果玩家猜中答案,输出恭喜的提示并结束游戏;如果玩家输入"q",则退出游戏;如果猜测次数达到上限,输出游戏结束的提示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值