JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day5:条件分岐 練習問題

JavaScript JavaScript
スポンサーリンク

Day5 条件分岐の練習問題

Day5 のテーマは if / else / else if
ここでは、条件分岐の理解を深めるための練習問題と、
それぞれの解答・解説をまとめていきます。

初心者がつまずきやすいポイントを丁寧に拾いながら、
「なぜそうなるのか」まで理解できる構成にしています。


四則演算の練習問題

問題1:if を使って条件を判定する

変数 age が 18 以上なら「大人です」と表示してください。

const age = 20;
JavaScript

解答例

if (age >= 18) {
  console.log("大人です");
}
JavaScript

解説

if の条件には true / false になる式 を書きます。
age >= 18 が true のため、メッセージが表示されます。


else を使った練習問題

問題2:大人か子どもかを判定する

age が 18 以上なら「大人です」、
それ以外なら「子どもです」と表示してください。

const age = 15;
JavaScript

解答例

if (age >= 18) {
  console.log("大人です");
} else {
  console.log("子どもです");
}
JavaScript

解説

if が false のときに実行されるのが else。
「どちらか一方は必ず実行される」形になります。


else if を使った練習問題

問題3:スコアで評価を変える

score に応じて次のように表示してください。

90 以上 → 「優」
70 以上 → 「良」
それ以外 → 「可」

const score = 72;
JavaScript

解答例

if (score >= 90) {
  console.log("優");
} else if (score >= 70) {
  console.log("良");
} else {
  console.log("可");
}
JavaScript

解説

上から順番に評価され、
最初に true になった部分だけが実行されます。


複数条件を組み合わせる練習問題

問題4:学生割引が使えるか判定する

次の条件を満たすコードを書いてください。

  • age が 18 以上
  • isStudent が true
  • 両方満たしている場合「学生割引が使えます」と表示
const age = 19;
const isStudent = true;
JavaScript

解答例

if (age >= 18 && isStudent) {
  console.log("学生割引が使えます");
} else {
  console.log("条件を満たしていません");
}
JavaScript

解説

AND(&&)は「両方 true のときだけ true」。
条件を組み合わせるときの基本です。


NOT(!)を使う練習問題

問題5:ログインしていない場合のメッセージ

isLoggedIn が false のときだけ
「ログインしてください」と表示してください。

const isLoggedIn = false;
JavaScript

解答例

if (!isLoggedIn) {
  console.log("ログインしてください");
}
JavaScript

解説

!(NOT)は true / false を反転させます。
false → true になるため、if が実行されます。


条件の順番を意識する練習問題

問題6:年齢で料金を分ける

次の条件で料金を表示してください。

20 以上 → 「大人料金」
13 以上 → 「中人料金」
それ以外 → 「子ども料金」

const age = 14;
JavaScript

解答例

if (age >= 20) {
  console.log("大人料金");
} else if (age >= 13) {
  console.log("中人料金");
} else {
  console.log("子ども料金");
}
JavaScript

解説

「より厳しい条件(範囲が狭い条件)」を上に書くのが鉄則。
これを守らないと、意図しない結果になります。


ネスト(if の中に if)の練習問題

問題7:年齢と会員ステータスで判定する

次の条件でメッセージを表示してください。

  • 18 以上
    • かつ 会員 → 「利用できます」
    • かつ 非会員 → 「会員登録が必要です」
  • 18 未満 → 「利用できません」
const age = 20;
const isMember = false;
JavaScript

解答例

if (age >= 18) {
  if (isMember) {
    console.log("利用できます");
  } else {
    console.log("会員登録が必要です");
  }
} else {
  console.log("利用できません");
}
JavaScript

解説

ネストは「まず大きな条件で分けて、
その中でさらに細かく分ける」時に使います。


セキュリティ視点の応用問題

問題8:管理画面へのアクセス判定

次の条件でメッセージを表示してください。

  • isLoggedIn が true
  • かつ isAdmin が true
  • 両方満たす場合 → 「管理画面にアクセスできます」
  • それ以外 → 「アクセス権限がありません」
const isLoggedIn = true;
const isAdmin = false;
JavaScript

解答例

if (isLoggedIn && isAdmin) {
  console.log("管理画面にアクセスできます");
} else {
  console.log("アクセス権限がありません");
}
JavaScript

解説

条件分岐は「誰に何を許可するか」を決める重要な場所。
条件の書き間違いはそのままセキュリティホールになります。


Day5 練習問題まとめ

Day5 の練習で身につくことは次の通りです。

  • if / else / else if の基本構造を理解できる
  • 条件は true / false になる式を書く
  • 条件は上から順番に評価される
  • AND / OR / NOT と組み合わせて複雑な条件を作れる
  • ネストを使って段階的な判定ができる
  • 条件の書き方ひとつで安全性が変わることを理解できる

条件分岐はプログラミングの「判断力」を作る最重要パートです。
ここをしっかり理解しておくと、Day6 以降の学習が一気に楽になります。

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