ゼロからプログラマーになるために!【基本的なプログラミング概念編:2-3】条件分岐(if文、else文)

program

1. 条件分岐とは?

条件分岐とは、プログラムにおいて特定の条件が満たされるかどうかによって、異なる処理を実行する仕組みです。たとえば、「ユーザーの年齢が20歳以上ならば、‘成人です’と表示する」といったように、条件に応じて処理を分けることができます。


2. if文とelse文の基本構造

if文

if 文は、指定した条件が「真(True)」の場合に、ブロック内のコードを実行します。条件が「偽(False)」の場合は、そのブロックのコードは実行されません。

age = 20

if age >= 18:
print("あなたは成人です。")

else文

else 文は、if 文の条件が満たされなかったときに、代わりに実行されるコードを定義します。

age = 16

if age >= 18:
print("あなたは成人です。")
else:
print("あなたは未成年です。")

上の例では、年齢が18歳以上なら「あなたは成人です。」と表示され、それ以外なら「あなたは未成年です。」と表示されます。


図1:if文とelse文の基本構造

条件処理
条件が真(True)if ブロックが実行
条件が偽(False)else ブロックが実行

3. elif文(複数の条件分岐)

elif 文は、「他の条件も確認したい」という場合に使用します。if 文の後に追加することで、複数の条件を順に確認できます。

score = 75

if score >= 90:
print("評価:A")
elif score >= 70:
print("評価:B")
else:
print("評価:C")

上記のコードでは、score の値が90以上なら「評価:A」、70以上なら「評価:B」、それ以外は「評価:C」が表示されます。


4. 条件式の書き方

条件分岐に使われる「条件式」は、比較演算子や論理演算子を使って作成します。よく使われる条件式を見ていきましょう。

4.1 比較演算子

演算子説明
==等しいx == 10
!=等しくないx != 10
>大きいx > 10
<小さいx < 10
>=以上x >= 10
<=以下x <= 10

4.2 論理演算子

演算子説明
and両方の条件が真の場合x > 10 and y < 20
orどちらかが真の場合x > 10 or y < 20
not条件が偽の場合not x > 10(xが10以下)

5. 条件分岐の実例

次に、条件分岐を活用した例をいくつか見てみましょう。

5.1 年齢による条件分岐

age = 25

if age >= 20:
print("成人です。")
else:
print("未成年です。")

このコードでは、age が20以上なら「成人です。」と表示され、それ以外なら「未成年です。」と表示されます。

5.2 成績評価の条件分岐

score = 85

if score >= 90:
print("評価:A")
elif score >= 80:
print("評価:B")
elif score >= 70:
print("評価:C")
else:
print("評価:D")

このコードでは、score が異なる範囲に応じてAからDまでの評価が表示されます。


図2:上記コードの条件分岐フローチャート

             +------------------+
| 条件1 (score >= 90) |
+--------+---------+
|
条件が真ならAを表示
|
+------------------+
| 条件2 (score >= 80) |
+--------+---------+
|
条件が真ならBを表示
|
+------------------+
| 条件3 (score >= 70) |
+--------+---------+
|
条件が真ならCを表示
|
条件が偽ならDを表示

このフローチャートでは、score の値によって異なる評価が表示される流れを示しています。条件を順に評価し、どの条件に該当するかに応じて適切な評価が表示されます。


6. 応用:ネストされた条件分岐

条件分岐は、必要に応じて「ネスト(入れ子)」させることができます。ネストされた条件分岐は、条件の中にさらに条件がある場合に使用されます。

age = 22
has_permission = True

if age >= 18:
if has_permission:
print("入場できます。")
else:
print("許可が必要です。")
else:
print("入場できません。")

表1:条件分岐の構造のまとめ

説明
if条件が真ならコードブロックを実行if age >= 18: print("成人です")
elseif の条件が偽の場合にコードを実行else: print("未成年です")
elif他の条件を追加し、順次確認するelif score >= 70: print("評価:B")
ネスト条件分岐の中にさらに条件を入れるif age >= 18: if has_permission:

まとめ

  • 条件分岐 は、プログラムが条件に応じて異なる動作を行うための仕組みです。
  • if 文、elif 文、else 文を使うことで、柔軟な条件分岐が可能になります。
  • ネストされた条件分岐 を使うと、より複雑な判定ができるようになります。

条件分岐を理解することで、プログラムが特定の条件に基づいて異なる処理を行うように設計できるようになります。


次のステップ:ループ処理へ

次に学ぶ「ループ処理」では、特定の処理を繰り返し実行する方法を学びます。例えば、「0から10までの数字を順に表示する」「リストのすべての要素を順番に表示する」といったことが可能になります。ループ処理と条件分岐を組み合わせることで、より複雑で多機能なプログラムを作成できるようになりますので、ぜひ次の内容も学んでみてください!

コメント

タイトルとURLをコピーしました
//投稿内コードにコピー表示 //コピー表示ここまで