TypeScript - 判断处理

こんにちは、将来のプログラマーさんたち!今日はプログラミングにおける最も重要な概念の一つである判断处理について深く掘り下げます。あなたの近所の親切なコンピュータ教師として、TypeScriptでのこの旅をガイドするのを楽しみにしています。コードを書いたことがない人も心配しないでください - 一起きから始めて、一緒に上達していきましょう。

TypeScript - Decision Making

判断处理とは?

コードに入る前に、まずプログラミングにおける判断处理が実際に何を意味するか話しましょう。ゲームをしていると考えてください。ゲームはあなたの動作に基づいて常に判断を下しています:ジャンプボタンを押すと、キャラクターがジャンプします。敵にぶつかると、ライフが減ります。これが判断处理の実行です!

プログラミングでは、判断处理によりコードが特定の条件に基づいて選択を行うことができます。まるでプログラムに思考と行動するための脳を与えるようなものです。

if文

TypeScript(そして多くの他のプログラミング言語)における最も基本的な判断处理はif文です。簡単な例を見てみましょう:

let playerScore = 75;

if (playerScore > 50) {
console.log("You passed the level!");
}

このコードでは、プレイヤーのスコアが50以上かどうかを確認しています。それがtrueなら、祝福のメッセージを表示します。以下に分解します:

  1. playerScoreという変数を宣言し、75に設定します。
  2. ifキーワードで判断処理を開始します。
  3. 括弧内に条件を設定します:playerScore > 50
  4. この条件がtrueなら、角括弧{}内のコードが実行されます。

このコードを実行すると、"You passed the level!"が表示されます。playerScoreを40に変更して、何が起きるかを確認してみてください!

if-else文

しかし、条件がfalseのときに何かを行いたい場合はどうでしょう?その場合、else文が便利です:

let playerLives = 0;

if (playerLives > 0) {
console.log("Game on! You're still alive.");
} else {
console.log("Game over! Better luck next time.");
}

ここでは、プレイヤーがライフを持っているかどうかを確認しています。もしあれば、ゲームは続けられます。もしなければ、ゲームは終了です。これはゲームが判断处理を使ってゲームの流れを制御する素晴らしい例です。

else-if文

時々、複数の条件を確認する必要があります。その場合、else ifが役立ちます:

let grade = 85;

if (grade >= 90) {
console.log("A - Excellent!");
} else if (grade >= 80) {
console.log("B - Good job!");
} else if (grade >= 70) {
console.log("C - Not bad, keep improving!");
} else {
console.log("You need to study more!");
}

このコードは、生徒の成績を確認し、スコアに基づいて異なるフィードバックを提供します。一番高い成績から確認を始め、条件がtrueになるまで進みます。条件がtrueになると、そのブロックのコードが実行され、残りはスキップされます。

switch文

多くの条件を確認する必要がある場合、特に単一の変数を複数の値と比較する場合、switch文はよりクリーンで効率的です:

let dayNumber = 3;
let day: string;

switch (dayNumber) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break;
default:
day = "Invalid day";
}

console.log(`The day is ${day}`);

このswitch文はdayNumberの値を確認し、対応する日名をday変数に割り当てます。breakステートメントはここで非常に重要です - 一致した場合に他のケースを確認しないように指示します。

条件(三位)演算子

シンプルなif-else判断の場合、TypeScriptは ternary 演算子という shorthandを提供しています。これはyes/noの質問のようなものです:

let age = 20;
let canVote = age >= 18 ? "Yes" : "No";

console.log(`Can this person vote? ${canVote}`);

このコードはageが18歳以上かどうかを確認します。それがtrueならcanVoteは"Yes"に設定され、それ以外なら"No"に設定されます。これはシンプルなif-elseステートメントをコンパクトに書く方法です。

ネストされた判断処理

時々、判断の中に別の判断を行う必要があります。これをネストされた判断処理と言います:

let isRaining = true;
let hasUmbrella = false;

if (isRaining) {
if (hasUmbrella) {
console.log("You can go outside with your umbrella!");
} else {
console.log("Better stay inside, you don't have an umbrella.");
}
} else {
console.log("Enjoy the nice weather outside!");
}

このコードはまず天気が雨かどうかを確認します。それがtrueなら、傘を持っているかどうかを確認します。これに基づいて異なるアドバイスを提供します。

判断処理方法の摘要

ここでカバーした判断処理方法の簡単な参照表を示します:

方法 使用ケース シntax
if 単一の条件 if (condition) { ... }
if-else 二つの可能性 if (condition) { ... } else { ... }
else-if 複数の条件 if (condition1) { ... } else if (condition2) { ... } else { ... }
switch 単一の変数の複数のケース switch (variable) { case value1: ... break; case value2: ... break; default: ... }
三位演算子 シンプルなif-else condition ? valueIfTrue : valueIfFalse

覚えておきたいのは、プログラミングにおける判断処理をマスターするためには練習が重要だということです。自分自身のシナリオを作成し、これらの異なる方法を実装してみてください。もしかしたら、シンプルなテキストベースのゲームを作成し、判断処理を使ってストーリーを進めることもできるかもしれません!

このまとめとして、少しだけプログラミングの知恵を共有したいと思います:コードは料理と似ています。基本的な材料(変数)から始め、レシピ(アルゴリズム)に従い、異なる技術(判断処理など)を使って素晴らしいものを作成します。 therefore、実験を恐れず、楽しみながらプログラミングを続けてください!

codingを続け、好奇心を持ち続け、判断処理を楽しんでください!

Credits: Image by storyset