数字炸弹游戏规则:
在一个数字范围内,有一个数字作为炸弹,谁猜中这个炸弹就被惩罚.比如范围是1~99,
炸弹是60,然后猜了一个数字是30,30不是炸弹,那么现在猜数字的范围就缩小到30~100,
又猜了一个数字80,80也不是炸弹,那么现在又缩小范围到30~80,每次猜不能猜边界上的值,
直到你或电脑猜中这个炸弹,然后就会受到惩罚,游戏结束
要求:你先输入一个数如果不是炸弹,然后让电脑缩小范围输入一个数字,如果还不是炸弹你再次缩小范围输入,下来又到电脑,依次反复,直到找到炸弹
O. 首先找到核心思路
1、生成炸弹
2、打印炸弹范围
3、自己猜一次
4、缩小炸弹范围
5、电脑生成随机数(电脑猜一次)
6、继续缩小炸弹范围
7、循环这些操作,直到炸弹爆炸,游戏结束!
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
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判断,大与炸弹值更改上限,小于缩小下限。直到游戏结束!
================== 运行结果 ==================
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/Assassin567/article/details/103380085