import random
number1=random.randint(1,100)
#随机数在(a,b)之间
a = 1 #表示当前随机数所在范围的最小值
b = 100 #表示当前随机数所在范围的最大值
num = 1 #统计猜数字次数
#对输入数(number2)的合法性进行判断的函数,函数的返回值为重新输入的number2的值
def determine (c):
if c < 1 or c > 100:
number2=int(input("输入错误,请从新输"))
else:
number2 = c
return number2
number2 = int (input("请输入你猜的教字(100之间)"))
number2 = determine(number2) #调用determine函数频道number2的合法性,返回值从新赋值给number2
while 1:
if number1 == number2:
print("猜对了,一共猜了%d次,正确结果是%d" %(num,number2))
break
if number1 < number2:
b=number2 #更改随机数所在范围
number2 = int(input("第%d次猜,猜大了,正确结果在%d和%d之间"%(num,a,b)))
#number2 = determine(number2) #调用determine函数频道number2的合法性,返回值从新赋值给number2
if number1 > number2:
a = number2 #更改随机数所在范围
number2 = int(input("第%d次猜,猜小了,正确结果在%d和%d之间" % (num, a, b)))
#number2 = determine (number2) #调用determine函数频道number2的合法性,返回值从新赋值给number2
num += 1