条件分岐 / ch05 — switch 文 / 演習 02
📝 ドリル 02 — grade を合格/不合格に振り分け
問題
標準入力で grade を 1 行受け取ります。値は A B C D のいずれかです。
C 以上 (= A / B / C) なら pass、D なら fail を出力してください。
判定には switch 文を使うこと。
ヒント: A と B と C で同じ処理にしたい場合は、case "A": と case "B": を続けて書いて break を省略する書き方が使えます。
| 入力 | 出力 |
|---|---|
| A | pass |
| B | pass |
| C | pass |
| D | fail |
入力例:
B
期待される出力:
pass
採点
php scripts/grade.php v2/topics/02-conditional/ch05-switch/drill/02-grade/
ヒント
$grade = trim(fgets(STDIN));で文字列として読む- 複数 case を 1 つの処理にまとめる:
case "A": case "B": case "C": echo "pass\n"; break;
テストケース
標準入力
B
期待される出力
pass
📄 starter.php(雛形)
このコードから書き始めてください。
<?php
// TODO: 標準入力から grade (A/B/C/D) を読み、C 以上なら "pass"、
// D なら "fail" を出力する。switch 文で書くこと。
// ヒント:
// $grade = trim(fgets(STDIN));
// switch ($grade) {
// case "A":
// case "B":
// case "C":
// echo "pass\n";
// break;
// case "D":
// echo "fail\n";
// break;
// }
✅ 解答例を見る(自分で解いてから)
<?php
$grade = trim(fgets(STDIN));
switch ($grade) {
case "A":
case "B":
case "C":
echo "pass\n";
break;
case "D":
echo "fail\n";
break;
}