LoginSignup
0
0

More than 3 years have passed since last update.

Pythonでビン取りゲームを作ってみた

Last updated at Posted at 2020-10-23

ビン取りゲームというゲームをPythonで作ってみた。
しかし何本とるかをランダムで決めているだけだからすごく弱い...

コード

BottlePickingGame.py
import random
import time
import sys

print("""
ビン取りゲームを始めます。ビン取りゲームとは、
ビンの本数を決めて交互にビンを取っていき、
最後のビンを取った人が負けです。
ビンの全体の最低本数は15本で、
1回に取れる本数は1本、または2本、または3本です。
""")

time.sleep(2)
Number=0
while 15>Number:
    try:
        Number=int(input("ビンは何本にしますか?\n"))

        if 15>Number: 
            print("ビンの最低本数は、15本です")
    except ValueError:
        print("半角数字で整数を入力してください")
remaining=0
remaining=int(remaining)
turn=0
take=0
take=int(take)
print("\n\nゲームを開始します")
time.sleep(1)
while Number>=remaining:
    print("\n残りの本数は、",Number-remaining,"本です",sep="")
    time.sleep(0.5)
    print("\nあなたの番です")
    turn=0
    take=0
    time.sleep(0.5)
    while take>3 or 0>=take:
        try:
            take=int(input("何本取りますか?\n"))
            if take>3 or 0>=take:
                print("取れる本数は、1〜3本です")
        except ValueError:
            print("半角数字で整数を入力してください")
    remaining=remaining+take
    print("\n残りの本数は、",Number-remaining,"本です",sep="")
    if remaining>=Number:
        break
    time.sleep(0.8)
    print("\nCPの番です")
    turn=1
    if Number>remaining+3:
        take=random.randint(1,3)
        take=int(take)
    elif Number>remaining+2:
        take=2
        take=int(take)
    elif Number>remaining+1:
        take=1
        take=int(take)
    else:
        take=1
        take=int(take)
    remaining=remaining+take
    time.sleep(0.5)
    print(take, "本取りました",sep="")
    if remaining>=Number:
        break
if turn==0:
    time.sleep(0.5)
    print("\n\nあなたの負けです...")
else:
    time.sleep(0.5)
    print("\n\nあなたの勝ちです!!")
time.sleep(1)
print("ゲームを終了します")
time.sleep(5)
sys.exit(0)
0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0