プログラミング初心者の方がよく疑問に思うのが、ループ変数 i の初期値です。特に「なぜ2行目で i=1 になるのか」「0と1はどのように使い分けるのか」といった質問が多くあります。
ループの基本と i の初期値
プログラムで繰り返し処理を行う場合、for 文や while 文でカウンタ変数を使います。例えば for 文では for(i=0;i<5;i++) のように書くことがあります。
ここで i の初期値を 0 にするか 1 にするかは、配列の添字や処理の回数に応じて決めます。C言語やJavaScriptの配列は 0 から始まるため、添字に合わせて i=0 とすることが多いです。
なぜ 2 行目で i=1 になるのか
for 文では初期化、条件判定、更新の順に処理が進みます。例えば:
for(i=0;i<5;i++){
// 処理
}
1 行目で i=0 と初期化されますが、ループが 1 回目の条件判定を通過すると i はまだ 0 のまま処理されます。そして 1 回目の処理が終わった後に i++ によって i=1 になり、2 回目のループで i=1 から処理が始まります。
0 と 1 の使い分けの基準
配列やリストのインデックスが 0 始まりの場合は i=0 を初期値にします。例えば JavaScript で配列の最初の要素にアクセスする場合です。
逆に、人間に馴染みのある 1 始まりの番号付けを意識する場合や、カウントを直接出力したい場合には i=1 から始めることがあります。
実例で理解する i の使い分け
例えば 5 回繰り返して “処理中” と表示する場合:
for(i=0;i<5;i++){
console.log(i); // 0,1,2,3,4
}
この場合は 0 から始めると配列の添字と同じになります。1 から始めたい場合は:
for(i=1;i<=5;i++){
console.log(i); // 1,2,3,4,5
}
このように用途に応じて初期値を選ぶのがポイントです。
まとめ
ループ変数 i は初期値の選び方で処理の開始位置が変わります。配列の添字や処理回数に応じて 0 始まりか 1 始まりかを選択することが基本です。
for 文の処理順序や具体例を確認することで、なぜ 2 行目で i=1 になるのか、0 と 1 をどう使い分けるかが自然に理解できます。


コメント