JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day6:繰り返し 練習問題

JavaScript JavaScript
スポンサーリンク

Day6 繰り返しの練習問題

Day6 のテーマは forwhile
ここでは、繰り返し処理の理解を深めるための練習問題と、
それぞれの解答・解説をまとめていきます。

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


for 文の練習問題

問題1:1〜5 を順番に表示する

1 から 5 までの数字を for 文で表示してください。

解答例

for (let i = 1; i <= 5; i = i + 1) {
  console.log(i);
}
JavaScript

解説

i を 1 からスタートし、5 まで 1 ずつ増やしています。
「初期値 → 条件 → 更新」の流れが for 文の基本です。


問題2:0〜8 を 2 ずつ増やして表示する

0, 2, 4, 6, 8 を表示してください。

解答例

for (let i = 0; i <= 8; i = i + 2) {
  console.log(i);
}
JavaScript

解説

更新部分を i = i + 2 にすることで、2 ずつ増やせます。
「何をどれだけ増やすか」は自由に設定できます。


問題3:1〜10 の合計を求める

for 文を使って 1〜10 の合計を求めてください。

解答例

let sum = 0;

for (let i = 1; i <= 10; i = i + 1) {
  sum = sum + i;
}

console.log(sum);
JavaScript

解説

sum を「結果をためる箱」として使っています。
ループのたびに i を足していくのがポイントです。


while 文の練習問題

問題4:1〜5 を while 文で表示する

for 文ではなく while 文で、1〜5 を表示してください。

解答例

let i = 1;

while (i <= 5) {
  console.log(i);
  i = i + 1;
}
JavaScript

解説

while 文では「更新」を自分で書く必要があります。
更新を忘れると無限ループになるため注意が必要です。


問題5:10 から 1 までカウントダウンする

while 文で 10 → 1 の順に表示してください。

解答例

let i = 10;

while (i >= 1) {
  console.log(i);
  i = i - 1;
}
JavaScript

解説

減らすループは i = i - 1 を使います。
条件と更新が対応していることが重要です。


for と while の応用問題

問題6:3 の倍数だけを表示する(for)

1〜20 の中で、3 の倍数だけを表示してください。

解答例

for (let i = 1; i <= 20; i = i + 1) {
  if (i % 3 === 0) {
    console.log(i);
  }
}
JavaScript

解説

i % 3 === 0 は「3 で割った余りが 0」つまり「3 の倍数」。
for と if の組み合わせは非常に重要です。


問題7:合計が 50 を超えるまで足し続ける(while)

1 から順に足していき、合計が 50 を超えたら終了してください。
最後に「合計」と「最後に足した数」を表示してください。

解答例

let sum = 0;
let n = 1;

while (sum <= 50) {
  sum = sum + n;
  n = n + 1;
}

console.log("合計:", sum);
console.log("最後に足した数:", n - 1);
JavaScript

解説

「何回足すかはわからない」ため while が適しています。
条件で止めるタイプのループは while の得意分野です。


セキュリティ視点の問題

問題8:無限ループになるコードを修正する

次のコードは無限ループになります。
原因を説明し、正しく動くように修正してください。

let i = 0;

while (i < 5) {
  console.log(i);
}
JavaScript

解答例(修正)

let i = 0;

while (i < 5) {
  console.log(i);
  i = i + 1;
}
JavaScript

解説

i を増やしていないため、条件が永遠に true のままになります。
無限ループはブラウザを固めるだけでなく、
サーバー側では CPU を使い続ける危険なバグになります。


Day6 練習問題まとめ

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

for 文で「回数が決まっている繰り返し」が書ける
while 文で「条件次第の繰り返し」が書ける
合計を求める・条件付きで処理するなどの応用ができる
無限ループの危険性と防ぎ方を理解できる

繰り返しはプログラミングの中でも特に使用頻度が高い構文です。
ここをしっかり理解しておくと、Day7 以降の配列・関数が一気に楽になります。

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