プログラミングで繰り返し処理を行うには、for文とwhile文があります。
それぞれ特徴が違うので、使い分けを理解することが大切です。

今回は、for文とwhile文について、改めて学んだことをお話しします。

for文とwhile文

~Crebitテキストより~
for文は、「○回繰り返す」といった回数が決まっている繰り返しです。
プログラミングでは、次のような文の仕組みになります。

for (①繰り返しの準備 ; ②繰り返す条件 ; ③更新) {
  ④実行したい処理
 }

一方でwhile文とは、「いつ終わるかわからないけど、ある条件が成り立っている間はずっと繰り返したい」時に使えます。
プログラミングでは、次のような文の仕組みになります。

while (①条件) {
  ②実行したい処理 ;
  ③更新処理及び、ループから抜け出すための処理
}

for文とwhile文で同じ処理を比較

for文とwhile文では、同じ処理を行うこともできるんですよ。
「1〜10までの数字を出力する」コードはそれぞれ以下のようになります。

 for文の場合
for (let i = 1; i <= 10; i=i+1) {
console.log(i);
}

while文の場合
let i = 1;
while (i <= 10) {
  console.log(i);
  i=i+1;
}

同じ処理をしたいのに、書き方が異なりますね。
for文は回数が決まっているとき向き、while文は条件が決まっているとき向きとわかります。

よく使われる場面

また、for文とwhile文は実践ではどういった場面で使われることが多いのでしょうか?
それぞれ以下のような場面で使われます。

for文の場合
・配列やリストの要素を順番に処理する→データの一括処理や集計に使える
・一定回数ループさせる→試験的に同じ処理を何度も走らせたいときや、数値を1ずつ増やしながら処理するとき
・配列の要素と、その要素の位置を両方使って処理する→配列の値を更新したり、配列の位置によって処理を変えられる

while文の場合
・ユーザーの入力待ち→プログラムを終了させるための指示が来るまで続けるといった処理
・特定の条件が満たされるまで繰り返す→条件が何回で満たされるかわからない時に適している
・イベント待ち・監視→誰かからのリクエストが来るまでじっと待つ、ある条件が起こるまでずっとチェックし続ける

まとめ

for文は回数が決まっている処理向き  → リスト処理、固定回数ループなどで使われる
while文は条件が決まっている処理向き  → ユーザー入力待ち、イベント待ち・監視などで使われる

for文とwhile文の違いを理解して、適切に使い分けられるようになりたいと思います。