先上代码
import random
answer=random.randint(1,99) #随机生成99以内的数
i=0
t=9
ln=1
rn=99
f = 0
print("您有9次机会\n请输入一个1到99之间的数:")
for number in range(1,10): #for循环决定猜的次数
i=int(input())
if i<answer:
ln=max(i+1,ln)
t=t-1
if rn-ln < 5:
if f == 1:
print(f"范围已经足够小了哦,继续加油,您还有{t}次机会")
else:
print(f"您猜入的数小于答案,您还有{t}次机会\n请输入一个{ln}到{rn}")
f = 1
else:
print(f"您猜入的数小于答案,您还有{t}次机会\n请输入一个{ln}到{rn}")
if i > answer:
rn = min(i-1,rn)
t = t-1
if rn - ln < 5:
if f == 1:
print(f"范围已经足够小了哦,继续加油,您还有{t}次机会")
else:
print(f"您猜入的数大于答案,您还有{t}次机会\n请输入一个{ln}到{rn}")
f = 1
else:
print(f"您猜的数大于答案,您还有{t}次机会\n请输入一个{ln}到{rn}")
if i == answer:
print("恭喜您猜中了")
break
思路
import random随机生成一个数字,让用户输入猜想的数字,for循环决定输入次数,分大于,小于,猜中三种情况,分别给出提示,定义rn,ln两个极限,用于提示(为了防止出现显示25到25这种问题,将左右极限小于5时输出“范围已经足够小了哦,继续加油“)
运行结果
您有9次机会
请输入一个1到99之间的数:
50
您猜的数大于答案,您还有8次机会
请输入一个1到49
43
您猜的数大于答案,您还有7次机会
请输入一个1到42
25
您猜的数大于答案,您还有6次机会
请输入一个1到24
11
您猜入的数小于答案,您还有5次机会
请输入一个12到24
15
您猜入的数小于答案,您还有4次机会
请输入一个16到24
20
您猜入的数小于答案,您还有3次机会
请输入一个21到24
23
范围已经足够小了哦,继续加油,您还有2次机会
21
恭喜您猜中了
进程已结束,退出代码0
请大家多多关照
谢谢阅读