では if / else をプログラミング初心者向けにやさしく、たっぷり例題で説明します。コードは全部 Python です。実行例(期待される出力)も併記します。読みやすさ重視で、よくあるミスやコツもまとめます。
- 1) まずは考え方(超ざっくり)
- 2) 基本の書き方(構文)
- 3) 超かんたんな例(1行ずつ)
- 4) よく使うパターンと例題(実行例付き)
- 5) elif の簡単な説明(else と一緒によく使う)
- 6) 条件式で使える主な比較・論理
- 7) よくあるミス(初心者が陥りやすい点)
- 8) デバッグのコツ
- 9) 練習問題(初心者向け:解答付き)
- Q1:整数 x が正なら "positive"、そうでなければ "non-positive" と出力するコードを書け。
- Q2:year が 2000 年以降なら "21世紀"、そうでなければ "20世紀以前" を出力する。
- Q3:n が偶数なら "even"、奇数なら "odd" を出力。
- Q4:文字列 s が空文字("")なら "empty"、それ以外なら "not empty" を出力。
- Q5:ユーザーの password と input_pw を比較して一致なら "OK"、違えば "NG" を出力。
- Q6:score が 90 以上なら "A"、70 以上なら "B"、それ以外は "C" を出す(elif 使用)。
- Q7:リスト items に "apple" が含まれていれば "あり"、なければ "なし" を出力。
- Q8:年齢 age が 20 以上なら "大人"、そうでなければ "子ども"。三項演算子で書く。
- Q9:変数 data が None なら "無"、そうでなければ "有" と出す。
- Q10:x と y が等しいなら "same"、違えば "diff"。
1) まずは考え方(超ざっくり)
ifは「もし〜ならば」の分岐。条件が真(True)ならifブロックを実行。elseは「それ以外」の処理。ifの条件がFalseのときに実行される。elif(optional)は「別の条件」の分岐(後で詳しく)。
2) 基本の書き方(構文)
if 条件式:
条件が真のときに実行する処理
else:
条件が偽のときに実行する処理
Pythonポイント::(コロン)を忘れない、内部の行は インデント(通常スペース4つ)する。
3) 超かんたんな例(1行ずつ)
x = 10
if x > 0:
print("xは正の数です")
else:
print("xは0か負の数です")
Python出力:
xは正の数です
4) よく使うパターンと例題(実行例付き)
例1 — 偶数/奇数判定
n = 7
if n % 2 == 0:
print("偶数")
else:
print("奇数")
Python出力:
奇数
例2 — 合否判定(シンプル)
score = 75
if score >= 60:
print("合格")
else:
print("不合格")
Python出力:
合格
例3 — 文字列比較(ユーザー入力想定)
password = "apple123"
input_pw = "apple123" # 実際は input() で受け取る
if input_pw == password:
print("ログイン成功")
else:
print("パスワードが違います")
Python出力:
ログイン成功
例4 — 複数行の処理(if/else 内で複数命令)
n = -5
if n >= 0:
print("正の数または0")
print("絶対値は", n)
else:
print("負の数です")
print("絶対値は", -n)
Python出力:
負の数です
絶対値は 5
例5 — 三項演算子(短く書く)
age = 18
message = "成人" if age >= 20 else "未成年"
print(message)
Python出力(日本の成人基準例として):
未成年
5) elif の簡単な説明(else と一緒によく使う)
複数の条件を順にチェックしたいときは elif を使う:
score = 85
if score >= 90:
print("A")
elif score >= 70:
print("B")
else:
print("C or below")
Python出力:
B
6) 条件式で使える主な比較・論理
- 比較:
==,!=,<,<=,>,>= - 論理:
and,or,not - メンバー:
in,not in(例:if ch in "aeiou":) - 真偽値の扱い(0,
"",[],NoneはFalseと扱われる)
例:
x = 5
if x > 0 and x < 10:
print("1〜9 の範囲")
else:
print("範囲外")
Python7) よくあるミス(初心者が陥りやすい点)
- コロン
:を忘れる →SyntaxError - インデント(スペース/タブの混在)で
IndentationErrorまたは期待通りに動かない - 比較で
=を使ってしまう(代入)→==を使うif x = 5:はエラー。正しくはif x == 5:
- 条件の論理が逆(例:
if not a == bとif a != bは同じだが読みやすさを意識) - 型の違い(文字列と数値を比較しない)
- 例:
"10" == 10はFalse(型が違う)
- 例:
8) デバッグのコツ
print()を使って条件の値を確認する(例:print("score:", score))- 条件が複雑なら途中の部分を変数に分ける(可読性向上)
- 小さなサンプル値で動作確認する
9) 練習問題(初心者向け:解答付き)
下に 問題+解答+簡単な解説 を載せます。まずは自分でコードを書く→実行→答え合わせしましょう。
Q1:整数 x が正なら "positive"、そうでなければ "non-positive" と出力するコードを書け。
解答例
x = 3
if x > 0:
print("positive")
else:
print("non-positive")
Python出力:positive
解説:0 を正としない場合は > を使用。
Q2:year が 2000 年以降なら "21世紀"、そうでなければ "20世紀以前" を出力する。
解答例
year = 1995
if year >= 2000:
print("21世紀")
else:
print("20世紀以前")
Python出力:20世紀以前
Q3:n が偶数なら "even"、奇数なら "odd" を出力。
解答例
n = 12
if n % 2 == 0:
print("even")
else:
print("odd")
Python出力:even
Q4:文字列 s が空文字("")なら "empty"、それ以外なら "not empty" を出力。
解答例
s = ""
if s == "":
print("empty")
else:
print("not empty")
Python出力:empty
Q5:ユーザーの password と input_pw を比較して一致なら "OK"、違えば "NG" を出力。
解答例
password = "pass"
input_pw = "pass"
if input_pw == password:
print("OK")
else:
print("NG")
Python出力:OK
Q6:score が 90 以上なら "A"、70 以上なら "B"、それ以外は "C" を出す(elif 使用)。
解答例
score = 72
if score >= 90:
print("A")
elif score >= 70:
print("B")
else:
print("C")
Python出力:B
Q7:リスト items に "apple" が含まれていれば "あり"、なければ "なし" を出力。
解答例
items = ["banana", "apple", "orange"]
if "apple" in items:
print("あり")
else:
print("なし")
Python出力:あり
Q8:年齢 age が 20 以上なら "大人"、そうでなければ "子ども"。三項演算子で書く。
解答例
age = 25
print("大人" if age >= 20 else "子ども")
Python出力:大人
Q9:変数 data が None なら "無"、そうでなければ "有" と出す。
解答例
data = None
if data is None:
print("無")
else:
print("有")
Python出力:無
Q10:x と y が等しいなら "same"、違えば "diff"。
解答例
x = 10
y = "10"
if x == y:
print("same")
else:
print("diff")
Python出力:diff(注意:型が違う)
まとめ(覚えておくといいこと)
ifは条件が真のとき、elseはそれ以外のとき。- コロンとインデントは必須。
elifで複数のケースを順にチェック。- 条件を簡潔に書くことで可読性UP。
- 小さく試して
print()で確認する癖をつけるとデバッグが楽。
