【オウル先生の基礎講座】Vol.3「ループ処理を理解しよう」
progmraming
未経験からのプログラミング上達ガイド
条件分岐とは、特定の条件に応じて処理を分けることを指します。プログラミングの世界では、この考え方を実装するために主に以下の2種類の構文を使います:
if文の基本形は以下の通りです:
if (条件式) {
// 条件が成立した場合の処理
}
より複雑な条件分岐として、else節やelse if節も使えます:
if (条件1) {
// 条件1が成立した場合の処理
} else if (条件2) {
// 条件2が成立した場合の処理
} else {
// どの条件も満たさない場合の処理
}
const weather = "rain";
if (weather === "rain") {
console.log("傘を持って出かけましょう!");
} else if (weather === "snow") {
console.log("コートを着て出かけましょう!");
} else {
console.log("天気が良いですね!");
}
条件式には比較演算子を使います:
演算子 | 意味 | 例 |
---|---|---|
=== | 厳密等価 | a === b |
!== | 厳密不等価 | a !== b |
== | 緩やかな等価 | a == b |
!= | 緩やかな不等価 | a != b |
> | より大きい | a > b |
< | より小さい | a < b |
>= | 以上 | a >= b |
<= | 以下 | a <= b |
===
と==
は何が違うの? ===
は値と型の両方を厳密にチェックするのに対し、==
は型変換を行ってから比較するんだ。安全性を考えると===
を使う方が推奨されているよ。 // 型変換の例
5 == "5" // true(自動的に型変換される)
5 === "5" // false(型も一致している必要がある)
複数の条件を組み合わせるには論理演算子を使います:
演算子 | 意味 | 例 |
---|---|---|
&& | AND(かつ) | a && b |
|| | OR(または) | a || b |
! | NOT(否定) | !a |
const age = 25;
const hasLicense = true;
if (age >= 18 && hasLicense) {
console.log("車を運転できます");
} else {
console.log("運転はできません");
}
switch文は、同じ変数に対して複数の値を比較する場合に便利です:
const dayOfWeek = 3;
switch (dayOfWeek) {
case 1:
console.log("月曜日");
break;
case 2:
console.log("火曜日");
break;
case 3:
console.log("水曜日");
break;
case 4:
console.log("木曜日");
break;
case 5:
console.log("金曜日");
break;
case 6:
console.log("土曜日");
break;
case 7:
console.log("日曜日");
break;
default:
console.log("無効な値です");
}
break
文を書き忘れると、次のcaseの処理も実行されちゃうから注意してね!これをフォールスルーと呼ぶんだ。 >=
, <=
など)を含む場合次のような課題を解いてみましょう:
問題1: 年齢に応じて異なるメッセージを表示するプログラムを書いてください。
問題2: 曜日に応じて開店時間を表示するプログラムを書いてください。
解答例は以下の通りです: <details> <summary>解答例を表示</summary>
// 問題1の解答
function getTicketPrice(age) {
if (age >= 0 && age <= 12) {
return "子供料金です";
} else if (age >= 13 && age <= 17) {
return "学生料金です";
} else if (age >= 18) {
return "大人料金です";
} else {
return "無効な年齢です";
}
}
// 問題2の解答
function getOpeningTime(dayOfWeek) {
switch (dayOfWeek) {
case "月":
case "火":
case "水":
case "木":
case "金":
return "9:00開店";
case "土":
return "10:00開店";
case "日":
return "休業日";
default:
return "無効な曜日です";
}
}
</details>
条件分岐は、プログラミングにおける最も基本的かつ重要な概念の一つです。if文とswitch文を適切に使い分けることで、より読みやすく効率的なコードを書くことができます。
次回は「ループ処理を理解しよう」をテーマに、繰り返し処理の基本から応用までを解説します。お楽しみに! 🚀