見出し画像

[Python]ちょっと楽しい石取りゲーム

1.石取りゲーム

石とりゲームというものを作ります。ルールはn個ある石からプレイヤーとPCが交互に決められた範囲内の個数で石を取っていき最後に残った1個を取った方が負けるゲームです。今回は20個ある石から1~3個の範囲で石を取っていきます。

2.コード

t
otal_stone = 20

get_min_stone = 1
get_max_stone = 3

while True:
    user_get_stone = int(input("石をいくつとりますか?(min:1/max:3):"))

    #入力制限処理 
    if user_get_stone < get_min_stone:
        user_get_stone = get_min_stone
    elif user_get_stone > get_max_stone:
        user_get_stone = get_max_stone

    total_stone -= user_get_stone
    if total_stone < 0:
        total_stone = 0
    print(f"あなたは{user_get_stone}個とりました。残石数:{total_stone}")
    if total_stone == 0:
        print("GAME OVER..負けちゃいましたね")
        break

    cp_get_stone = (total_stone - 1) % (get_min_stone + get_max_stone)
    if cp_get_stone < get_min_stone:
        cp_get_stone = get_min_stone
    elif cp_get_stone > get_max_stone:
        cp_get_stone = get_max_stone
    total_stone -= cp_get_stone
    if total_stone < 0:
        total_stone = 0
    print(f"CPは{cp_get_stone}個とりました。残石数:{total_stone}")
    if total_stone == 0:
        print("YOU WIN!! 勝利!圧倒的勝利!")
        break

3.実行結果

石をいくつとりますか?(min:1/max:3):3
あなたは3個とりました。残石数:17
CP1個とりました。残石数:16
石をいくつとりますか?(min:1/max:3):1
あなたは1個とりました。残石数:15
CP2個とりました。残石数:13
石をいくつとりますか?(min:1/max:3):2
あなたは2個とりました。残石数:11
CP2個とりました。残石数:9
石をいくつとりますか?(min:1/max:3):2
あなたは2個とりました。残石数:7
CP2個とりました。残石数:5
石をいくつとりますか?(min:1/max:3):2
あなたは2個とりました。残石数:3
CP2個とりました。残石数:1
石をいくつとりますか?(min:1/max:3):1
あなたは1個とりました。残石数:0
GAME OVER..負けちゃいましたね


この記事が気に入ったらサポートをしてみませんか?