(取火柴游戏),机器和人抽,人先,每次最少1根,最多4根,抽到最后一根者输

total = 20
while total+1 >0:
    m = int(input('请输入你要拿的根数:'))
    total -= m
    if total <=0:
        print('游戏结束')
        break
    if total < 5:
        n = total
        total -= n
    else:
        n = total % 5
        total -= n
    print('你拿了%d,机器拿了%d,剩下%d' % (m , n, total+1))

#最简单的解法
total = int(input('请输入火柴根数:'))
n = int(input('请输入最大可拿火柴根数:'))
while total > 0:
    m = int(input('请输入你要拿的根数:'))
    total -= m
    j = n + 1 - m
    total -= j
    print('你拿了%d,机器拿了%d,剩下%d' % (m , j, total))
#另一种解法
def main():
    total = 21
    while total > 0:
        print('总共还有%d根火柴' % total)
        while True:
            num = int(input('拿几根火柴:'))
            if 1<= num <= 4 and num <= total:
                break
        total -= num
        if total >0:
            print('计算机拿走了%d根火柴' % (5 - num))
            total -= 5- num
    print('你拿到了最后一根火柴,你输了!')


if __name__ == '__main__':
    main()
#电脑随机拿火柴
from random import randint
def main():
    total = 21
    while total > 0:
        print('总共还有%d根火柴' % total)
        while True:
            num = int(input('拿几根火柴:'))
            if 1<= num <= 4 and num <= total:
                break
        total -= num
        if total >0:
            com = randint(1, min(4, total))
            print('计算机拿走了%d根火柴' % com)
            total -= com
            if total == 0:
                print('计算机拿到最后一根火柴,你赢了!')
        else:
            print('你拿到了最后一根火柴,你输了!')


if __name__ == '__main__':
    main()



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值