大数协2020.10.28培训——数字大爆炸小游戏

2020.10.28数字大爆炸

数字大爆炸小游戏代码

一开始还是有点懵,之前学的函数忘了好多了,根据师兄发来的代码一步步自己写,慢慢摸索出来了函数的语法,后面终于能自己完整写出剩下的了。最终改进了一下代码(师兄的代码输入与范围不一样的值时还是继续进行的),还是蛮有成就感的,感谢三位师兄师姐!

import random
rd = random.randint(1,1001)#11000以内产生一个随机整数
Min = 1
Max = 1000
for i in range(1,1001):#尝试的次数有1000次
    num = int(input("请输入一个数,范围在[{}-{}]之间\n你输入的是:".format(Min,Max)))
    A = range(Min,Max+1)
    if num not in A:
        print("你输入的不在[{}-{}]".format(Min,Max))
        continue#跳过这个值后续程序并重新开始下一次循环
    if num > rd:
        Max = num - 1
        print('范围缩小为:[{}-{}]'.format(Min,Max))
        mnum = random.randint(Min,Max)
        print('机器输入了数字:{}'.format(mnum))
        if mnum > rd:
            Max = mnum - 1
            print('范围缩小为:[{}-{}]'.format(Min,Max))
        elif mnum < rd:
            Min = mnum + 1
            print('范围缩小为:[{}-{}]'.format(Min,Max))
        else:
            print('数字{}是炸弹,机器输了,你赢了'.format(mnum))
            break#结束for循环,下同
    elif num < rd:
        Min = num+1
        print('范围缩小为:[{}-{}]'.format(Min,Max))
        mnum = random.randint(Min,Max)
        print('机器输入了数字:{}'.format(mnum))
        if mnum > rd:
            Max = mnum - 1
            print('范围缩小为:[{}-{}]'.format(Min,Max))
        elif mnum < rd:
            Min = mnum + 1
            print('范围缩小为:[{}-{}]'.format(Min,Max))
        else:
            print('数字{}是炸弹,机器输了,你赢了,congrats =w='.format(mnum))
            break
    elif num == rd:
        print('数字{}是炸弹,你输了=w='.format(num))
        break

你可能感兴趣的:(笔记)