📜  硬币游戏赢家,每个玩家都有三个选择(1)

📅  最后修改于: 2023-12-03 14:56:31.054000             🧑  作者: Mango

硬币游戏赢家

这是一个关于硬币游戏赢家的程序,每个玩家都有三个抉择,让我们来看看它如何实现。

游戏规则
  • 游戏开始时,有 $n$ 枚硬币排成一排。
  • 每个玩家在自己的回合中可以进行以下操作之一:
    • 拿走一枚硬币
    • 拿走两枚硬币
    • 拿走三枚硬币
  • 游戏继续直到最后一枚硬币被拿走。
  • 谁拿到了最后一枚硬币,谁就是赢家。
程序设计

本程序使用 Python 语言编写。

依赖库
  • random
定义函数
import random

def game(n):
    """
    硬币游戏赢家
    """
    players = ['A', 'B']
    coins = n
    while coins > 0:
        for player in players:
            print(f'现在是 {player} 的回合')
            print(f'现在还有 {coins} 枚硬币')

            choose = random.choice(['one', 'two', 'three'])
            if choose == 'one':
                coins -= 1
                print(f'{player} 拿走了 1 枚硬币')
            elif choose == 'two' and coins >=2:
                coins -= 2
                print(f'{player} 拿走了 2 枚硬币')
            elif choose == 'three' and coins >=3:
                coins -= 3
                print(f'{player} 拿走了 3 枚硬币')

            if coins == 0:
                print(f'{player} 赢了')
                return player
调用函数
if __name__ == '__main__':
    game(10)
运行结果
现在是 A 的回合
现在还有 10 枚硬币
A 拿走了 1 枚硬币
现在是 B 的回合
现在还有 9 枚硬币
B 拿走了 3 枚硬币
现在是 A 的回合
现在还有 6 枚硬币
A 拿走了 2 枚硬币
现在是 B 的回合
现在还有 4 枚硬币
B 拿走了 3 枚硬币
现在是 A 的回合
现在还有 1 枚硬币
A 拿走了 1 枚硬币
B 赢了

以上是关于硬币游戏赢家的程序设计,希望对您的学习有所帮助。