"""
题目:练习使用python写一个猜数字的游戏,数字范围0-100,每次猜错,需要给出缩小后的范围,每个人只有10次的猜测机会,猜测机会用完游戏结束!
"""
#方法一:(增加了输入异常的处理,输入非法不计入输入次数中)
# coding:utf-8
import random
from time import sleep
print("欢迎您来玩猜数字游戏
"
"游戏规则如下:
"
""请从0-99中任意猜一个数字,如果您猜的数字与系统产生的数字"
"相同,即猜中,反之亦然!"
"切记,您只有10次机会!"")
print("现在游戏开始!")
tmp=random.randint(0,100)
times=0
min=0
max=100
while 1:
try:
a=input("请输入你要猜的数字:")
times=times+1
except:
print("不能输入非数字的内容!")
continue
if times<=10:
if 0<=a<=100:
if a<tmp:
min=a
print("真遗憾,您猜错了,现在范围是%d-%d" %(min,max))
elif a>tmp:
max=a
print("真遗憾,您猜错了,现在范围是%d-%d" %(min,max))
elif a==tmp:
if times==1:
print("您真是太棒了,一次就猜中了!")
else:
print("恭喜您,您答对了!
您一共花了%d次" %times)
break
else:
print("您输入的数字有误,请重新输入!")
else:
print("真遗憾,您的机会用完了>﹏<")
break
sleep(1)
print("猜数字游戏结束,再玩一次吧^_^!")
#方法二:(输入错误的不计入次数)
import random
print("欢迎您来玩猜数字游戏
"
"游戏规则如下:
"
""请从0-99中任意猜一个数字,如果您猜的数字与系统产生的数字"
"相同,即猜中,反之亦然!"
"切记,您只有10次机会!"")
tmp=random.randint(0,100)
min=0
max=100
a=101
times=0
while a!=tmp:
if times<=10:
times=times+1
a=input("请猜一个%d-%d之间的数字:"%(min,max))
if min<=a<=max:
if a<tmp:
min=a
print("真遗憾,您没猜中")
elif a>tmp:
max=a
print("真遗憾,您没猜中")
else:
print("您输入的数字有误,请输入一个%d-%d的数字!"%(min,max))
else:
print("真遗憾,您的机会用完了>﹏<")
break
if a==tmp:
if times==1:
print("您真是太棒了,一次就猜中了!")
else:
print("恭喜您,您猜对了!
猜字游戏结束!您一共用了%d次"%times)