Pythonの条件分岐とループをマスターしよう!数字当てゲームで実践

python

Pythonを学ぶ上で、条件分岐ループは非常に重要な概念です。これらを理解することで、より複雑なプログラムを作成することができるようになります。今回は、Pythonの基本的な制御構造であるif文for文について学び、それらを使って実際に動くプログラムを作成していきます。

条件分岐 (if文)

条件分岐は、プログラムがある条件を満たすかどうかによって、異なる処理を実行するために使用されます。Pythonでは、if文を使って条件を指定し、条件がTrueの場合に特定の処理を実行します。

1 if文の基本

以下のコードを見てみましょう。

x = 10
if x > 5:
    print("xは5より大きい")

このコードでは、xが5より大きい場合にprint("xは5より大きい")が実行されます。もしxが5以下であれば、このコードは何も表示しません。

2 elifとelse

if文だけではなく、他にもelif(else ifの略)やelseを使って、さらに複雑な条件分岐を行うことができます。

x = 10
if x > 15:
    print("xは15より大きい")
elif x > 5:
    print("xは5より大きいが15より小さい")
else:
    print("xは5以下")

このコードでは、xが15より大きければ1行目が実行され、5より大きいが15以下なら2行目、どれにも当てはまらなければ3行目が実行されます。

ループ (for文)

ループは、特定の処理を繰り返し実行するために使用されます。Pythonでは、for文を使って、リストやタプルなどの要素を順番に取り出して繰り返し処理を行います。

1 for文の基本

以下は、for文の基本的な使い方です。

for i in range(5):
    print(i)

このコードでは、range(5)によって0から4までの数が順番にiに代入され、print(i)が実行されます。出力結果は以下のようになります。

0
1
2
3
4

2 リストを使ったfor文

for文はリストや他のイテラブルなオブジェクトにも使用できます。次の例では、リストに含まれる各要素を順番に取り出して表示しています。

fruits = ["りんご", "バナナ", "みかん"]
for fruit in fruits:
    print(fruit)

出力結果は以下のようになります。

りんご
バナナ
みかん

数字当てゲームの作成

ここでは、条件分岐とループを組み合わせて、数字当てゲームを作ってみましょう。プレイヤーがコンピューターが選んだ数を当てるゲームです。

1 ゲームのロジック

まず、コンピューターが選ぶ数をランダムに生成します。そして、プレイヤーに数を入力させ、条件分岐を使ってプレイヤーが入力した数が正しいかどうかを判定します。

import random

# コンピューターが選ぶ数
number = random.randint(1, 100)

# ゲーム開始
print("1から100までの数字を当ててください!")
guess = None

# プレイヤーが当たるまで繰り返す
while guess != number:
    guess = int(input("数字を入力してください: "))
    
    if guess < number:
        print("もっと大きい数字です!")
    elif guess > number:
        print("もっと小さい数字です!")
    else:
        print("正解です!")

このコードでは、whileループを使ってプレイヤーが正しい数字を入力するまで繰り返し処理を行います。そして、入力された数がコンピューターの選んだ数より小さいか大きいかを条件分岐で判定し、適切なメッセージを表示します。

2 ゲームを実行する

実際にこのコードを実行すると、次のようなやり取りが行われます。

1から100までの数字を当ててください!
数字を入力してください: 50
もっと小さい数字です!
数字を入力してください: 25
もっと大きい数字です!
数字を入力してください: 37
正解です!

このように、条件分岐とループを使って、ゲームの流れを作ることができました。


まとめ

今回学んだ条件分岐if文)とループfor文)を駆使することで、プログラムに動的な処理を組み込むことができるようになりました。これらの基本的な制御構造を使いこなすことで、より複雑なプログラムを作成できるようになります。

数字当てゲームのように、実際のゲームやアプリケーションでよく使われる技術ですので、しっかりと理解しておきましょう。

次回はリストと辞書の使い方について学び、さらに複雑なデータを管理できるようになりましょう!

今回使用したVPSはこちら

コメント

タイトルとURLをコピーしました