實戰

成績等級判定

運用 if...else 多重分支邏輯,實作自動化成績等級分類系統。

分配成績等級

【題目需求】
  • 給定一個成績數字,依所在區間給定等級。
  • 0 ~ 59 => E;60 ~ 69 => D;70 ~ 79 => C;80 ~ 89 => B;90 ~ 100 => A。
  • 不在合理範圍內時應視為輸入錯誤並另行處理。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// 【程式碼練習】
// 依成績區間給定等級(E / D / C / B / A),範圍外視為輸入錯誤。

$score = 71;
$level = '';
if ($score >= 0 && $score < 60) {
    $level = 'E';
} else if ($score >= 60 && $score < 70) {
    $level = 'D';
} else if ($score >= 70 && $score < 80) {
    $level = 'C';
} else if ($score >= 80 && $score < 90) {
    $level = 'B';
} else if ($score >= 90 && $score <= 100) {
    $level = 'A';
} else {
    $level = '成績輸入錯誤';
}

echo "您的成績是: <strong>" . $score . "</strong> → 等級: <strong>" . $level . "</strong>";
您的成績是: 71 → 等級: C

【學習重點】

  • 流程總結:
    • 區間判斷:&& 結合上下界,讓分數落在正確範圍才指定等級。
    • 多重分支:else if 由上而下檢查,上一個不成立才繼續。
    • 例外處理:最後 else 承接負數、超過 100 等不合理輸入。
    • 細節見上方程式註解。
  • 概念補充
    • 區間直覺:
      例如 70 <= $score < 80 對應 C 級(實作時仍以兩段比較式寫成條件)。
    • 撰寫習慣:
      條件式內建議加空白(如 $score >= 0)以利閱讀與除錯。