JavaScript - ワileループ

こんにちは、将来のプログラミングスーパースターたち!今日は、JavaScriptのワileループの面白い世界に飛び込みます。あなたの近所の親切なコンピュータ教師として、私は多くの例と説明でこの旅を案内します。では、バーチャルのリュックを背负い、このループの冒険に乗り出しましょう!

JavaScript - While Loop

JavaScript ワileループ

ワileループは、目的地に達するまで「もう少しで着く?」と続ける頑固な友達のようです。これはプログラミングにおける基本的なツールで、指定された条件が真の間、コードのブロックを繰り返すことができます。

基本的な構文

以下は、ワileループの最もシンプルな形式です:

while (condition) {
// 実行されるコード
}

これを分解してみましょう:

  • whileキーワードは、JavaScriptにワileループを開始したいことを伝えます。
  • conditionは、各反復の前に評価されるブール表現です。
  • 条件が真の場合、カッコ内の {} コードが実行されます。
  • このプロセスは、条件が偽になるまで繰り返されます。

例1: 5まで数える

簡単な例から始めましょう:

let count = 1;

while (count <= 5) {
console.log("Count is: " + count);
count++;
}

この例では:

  1. count変数を1で初期化します。
  2. countが5以下の間、ワileループが続きます。
  3. ループ内で、現在のカウントをコンソールにログします。
  4. countを1増やします。
  5. ループはステップ3-4を繰り返します。countが6になるまで、条件が偽になるまで続けます。

出力:

Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5

例2: 数値の和

もう少し実用的な例を試みましょう。ワileループを使って、1から10までの数の和を計算します:

let sum = 0;
let number = 1;

while (number <= 10) {
sum += number;
number++;
}

console.log("The sum of numbers from 1 to 10 is: " + sum);

この例では:

  1. sumを0に、numberを1に初期化します。
  2. numberが10以下の間、ループが続きます。
  3. 各反復で、現在のnumbersumに加えます。
  4. numberを1増やします。
  5. ループが終了後、最終的な和を表示します。

出力:

The sum of numbers from 1 to 10 is: 55

JavaScript do...whileループ

次に、do...whileループに会いましょう。これはwhileループの少し楽観的ないとこです。まるで「まず一度やってみよう、それから続けるかどうか考えよう」と言っているようです。

基本的な構文

do...whileループの構造は以下の通りです:

do {
// 実行されるコード
} while (condition);

ここでの鍵となる違いは、コードブロックが条件チェック之前に少なくとも一度実行されることです。

例3: ガッセスゲーム

do...whileループを使った簡単なガッセスゲームを作ってみましょう:

let secretNumber = 7;
let guess;

do {
guess = prompt("Guess a number between 1 and 10:");
guess = Number(guess);

if (guess === secretNumber) {
console.log("Congratulations! You guessed it!");
} else if (guess < secretNumber) {
console.log("Too low! Try again.");
} else {
console.log("Too high! Try again.");
}
} while (guess !== secretNumber);

この例では:

  1. secretNumberを設定し、guessを初期化します。
  2. ループはユーザーに数を推測させ、数値型に変換します。
  3. 推測が正しいか、低すぎるか、高すぎるかをチェックし、フィードバックを提供します。
  4. 推測がシークレットナンバーに等しくない間、ループが続きます。
  5. 最初の試行で正しく推測した場合でも、ループボディは少なくとも一度実行されます。

JavaScript ワileループとforループ

ワileループを探検した今、おそらく「waileループを使うべきか、forループを使うべきか?」と疑問に思っているかもしれません。素晴らしい質問です!比較してみましょう。

ワileループを使う場合

ワileループは以下の場合に通常使われます:

  1. ループの反復回数が事前にわからない場合。
  2. ループの継続がループの実行中に変わる条件に依存する場合。

forループを使う場合

forループは以下の場合に好まれます:

  1. ループの反復回数が正確にわかっている場合。
  2. 配列などの長さがわかっているシーケンスを反復する場合。

例4: 1000を超える最初の2のべき乗を探す

ワileループを使って、1000を超える最初の2のべき乗を見つけます:

let power = 0;
let result = 1;

while (result <= 1000) {
power++;
result = Math.pow(2, power);
}

console.log(`The first power of 2 greater than 1000 is 2^${power} = ${result}`);

この場合、ワileループは完璧です。なぜなら、事前に必要な反復回数がわからないからです。

メソッド表

以下の表に、私たちが議論したメソッドをまとめます:

ループタイプ 構文 使用ケース
waile while (condition) { ... } 反復回数が未知のとき
do...while do { ... } while (condition); 少なくとも一度実行したいとき
for for (init; condition; update) { ... } 反復回数が已知のとき

覚えておいてください、適切なループを選ぶことは、適切な道具を選ぶのと同じです。練習を重ねることで、さまざまなシナリオに最も適したループを見極める直感を養うことができます。

そして、ここまで、私たちのワileループの冒険は終了です。ループはプログラミングの遊園地の旋回する乗り物のように、停止するまで回り続けます。練習を続け、不久にあなたもループのマスターになるでしょう!

Credits: Image by storyset