python之猜数字炸弹游戏
游戏规则:
在一个数字范围内,有一个数字作为炸弹,电脑跟玩家都进行猜,如果没有猜中那么以电脑跟玩家猜的数字,再作为生成炸弹的范围,如果猜中了,游戏结束,猜中的将受到惩罚。没猜中继续猜,范围一直缩小,直到分出胜负,并且每次不能猜边界上的值。
要求:先定义起始炸弹范围,再定义电脑玩家跟真人玩家,提醒真人玩家输的范围,并定义电脑玩家猜的范围,电脑跟真人玩家都不能猜到边界上的数字,如果猜到了,此回合重置。范围随着电脑生成炸弹范围变化而变化,如果没猜中,将电脑猜的数字跟真人玩家的数字作为炸弹范围,一直猜下去,如果猜中了,猜中的接受惩罚!
def main():
import random
print("进入游戏中")
start=0
end=99
while True:
bomb = random.randint(start,end)
if(bomb==start or bomb==end):
continue
print("你需要猜的数字范围是%d到%d:"%(start,end))
user_bomb=eval(input("请输入你要猜的炸弹数为多少"))
computer_bomb=random.randint(start,end)
print("电脑猜的数字是%d"%computer_bomb)
if (user_bomb == start or user_bomb == end):
print("您不能输入边界数字,,重新此回合")
continue
if (user_bomb == start or user_bomb == end):
print("电脑输入边界数字,重新此回合")
continue
if user_bomb==bomb==computer_bomb:
print("恭喜您和电脑都猜对了")
exit()
elif user_bomb==bomb:
print("恭喜你猜对了,接受惩罚把")
exit()
elif computer_bomb==bomb:
print("恭喜电脑猜中了,接受惩罚把")
exit()
else:
if(computer_bomb==user_bomb):
print("电脑跟你猜的一样,此回合不算")
else:
print("电脑跟你都没有猜中")
if(computer_bomb>user_bomb):
if(user_bomb+1==computer_bomb):
gameover()
end=computer_bomb
start=user_bomb
else:
if (computer_bomb + 1 == user_bomb):
gameover()
end = user_bomb
start = computer_bomb
def gameover():
print("游戏结束")
print("电脑跟你都没有猜对")
exit()
if __name__=='__main__':
main()
来一波,推送吧!
群号:781121386
群名:人生苦短,我学编程
欢迎大家加入我们,一起交流技术!!!