1.普通方法:
n=int(input("Enter the number you want to find>>"))
if n>30 or n<1:#判断输入的数字是否符合要求
print("Tips:Inviald input!!!")
else:#符合要求的数字进行判断
sum=0
for i in range(1,31):
sum += 1
if sum == n:
print(n)
运行结果如图所示:
2.用概率机查找
代码如下:
import random
a=int(input("Please enter an initial number>>"))#标明初始位置
b=int(input("Please enter the number you want to find>>"))#输入目标位置
if a>30 or a<1 or b>30 or b<1:#判断输入的数字是否在有效区间内
print("Tips:Invaild input!!!")
else:
while True:
m=random.randint(0,1)#随机生成整数0或1代表硬币投掷正反面
if m == 0:#如果是0就后退一步
s = a - 1#s代表移动后的位置
else:#如果是1就前进一步
s = a + 1
a = s#每循环一次就更新一次初始位置
if s==b:#当移动到目标位置时停止循环
break
print(s)#输出最后到达的位置
运行结果如下: