見出し画像

Pythonでじゃんけんゲームを作る

こんばんは、アリカです。
本日はPythonを使ってじゃんけんゲームを作ってみます。

プログラムはif文を使えれば実装可能です。
順を追って確認していきましょう!


最終結果

コード全体を先に記しておきます。

import random

def judge(myhand, yourhand):
    score = (int(myhand) - int(yourhand) + 3) % 3
    if score == 0:
        j = "引き分けです"
    elif score == 1:
        j = "あなたの負けです"
    else:
        j = "あなたの勝ちです"
    print(j)
    
myhand=input("グー:0,チョキ:1,パー:2 どれを出しますか≫")

try:
    if 0<=int(myhand)<=2:
        if int(myhand)==2:
            mhand="パー"
        elif int(myhand)==1:
            mhand="チョキ"
        else:
            mhand="グー"
        print(int(myhand))
        print("あなたは"+mhand+"を出しました")
        
        yourhand = random.randint(0, 2)
        if int(yourhand)==2:
            yhand="パー"
        elif int(yourhand)==1:
            yhand="チョキ"
        else:
            yhand="グー"
        print("相手は"+yhand+"を出しました")

        judge(myhand,yourhand)
    else:
        print("正しい数字を入力してください")
except ValueError:
    print("数字を入力してください")

動作確認


YouTubeにて、公式ドキュメントを使って基礎文法を解説しています。
体系的に基礎を学びたい方は是非ご活用ください!


作ってみよう

それでは実際に作成していきます。
今回はターミナル上で動くようにします。

自分の動き

まずは自分の動きを実装します。
inputでグー・チョキ・パーのどれを出すか入力させ、それに応じてif文で分岐していきます。

myhand=input("グー:0,チョキ:1,パー:2 どれを出しますか≫")

try:
    if 0<=int(myhand)<=2:
        if int(myhand)==2:
            mhand="パー"
        elif int(myhand)==1:
            mhand="チョキ"
        else:
            mhand="グー"
        print(int(myhand))
        print("あなたは"+mhand+"を出しました")
    else:
        print("正しい数字を入力してください")
except ValueError:
    print("数字を入力してください")

try-exceptは例外処理と言って、求めている値が入力されなかった場合の処理となります。必ずしも実装する必要はありません。

相手の動き

次に相手の動きを実装します。
相手はランダムにする必要があるため、randomをインポートします。

import random

yourhand = random.randint(0, 2)
if int(yourhand)==2:
    yhand="パー"
elif int(yourhand)==1:
    yhand="チョキ"
else:
    yhand="グー"
print("相手は"+yhand+"を出しました")

random.randint(0, 2)で、0から2のどれか1つのint値(整数値)を生成します。

勝敗の判定

今回のプログラムは勝敗の判定方法が1番のポイントとなってきます。

その勝敗の判定方法は、
(自分ー相手+3)%3の値(%は余りの計算を表す)が
0の場合:引き分け
1の場合:負け
2の場合:勝ち

となります。

コードにするとこうなります。

def judge(myhand, yourhand):
    score = (int(myhand) - int(yourhand) + 3) % 3
    if score == 0:
        j = "引き分けです"
    elif score == 1:
        j = "あなたの負けです"
    else:
        j = "あなたの勝ちです"
    print(j)

コードをまとめる

ここまでできたら、後は自分の動き、相手の動き、勝敗の判定のコードを上手く組み合わせて、最後にjudge関数を呼び出せばじゃんけんゲームの完成です。

最後に

本日はここまでとなります。

久々の投稿となってしまいました :-<
定期更新できるように頑張りたい。。。

最後まで読んでいただきありがとうございました。
スキ・フォロー・コメントお待ちしております!

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