見出し画像

3分で終わる!プログラミング概要 #3 - 繰り返し

この記事は、非エンジニアプログラミング初心者向け
どのプログラミング言語にも共通の考え方3分でお伝えしようというものです。今回は「繰り返し」です。
3分に収めるために、あえて説明を避けた部分もあります。
より詳しくは別途調べていただければと思います。

この記事では具体例に PowerShell を使います。
選んだ理由は windows 10 に標準搭載の環境だからです。
具体的な表記方法はプログラミング言語ごとに異なるので、
大枠の考え方に注目していただければと思います。

繰り返し

繰り返し処理を記述する構文として、大抵のプログラミング言語に for文while文 の二つがあります。
使い方次第でどちらを使っても同様の処理ができますが、
繰り返し回数があらかじめわかる状況では for文 が、そうでない状況では while文 が使われることが多いように感じます。

for文

for文は回数を数えるカウンタの役割をする変数を使って記述します。
次のようなかたちです。

for ( <カウンタの初期化> ; <条件> ; <カウントアップ> ) {
<繰り返したい処理>
}

処理の流れは次のようになります。

  1. <カウンタの初期化>
  2. <条件> を満たすか確認 (満たさなければここで終了)
  3. <繰り返したい処理> を実行
  4. <カウントアップ>
  5. 2番に戻る

カウンタになる変数名は自由ですが、一般的に "i" が使われることが多いです。(おそらく"index"の"i")
次をご覧ください。

画像1

実行結果として

0
1
2

が表示されました。
処理の流れは次の通りです。

  1. <カウンタの初期化>  $i = 0
  2.
<条件> を満たすか確認  $i -lt 3 ( → $i は3より小さい)
        ※-ltより小さい かを調べる比較演算子
  3. <繰り返したい処理> を実行  $i の値 0 を表示する
  4.
<カウントアップ>  $i = $i + 1 ($i に 0 + 1 を代入する)
  5. 2番に戻る
  2. <条件> を満たすか確認  $i -lt 3 ( → $i は3より小さい)
  3. <繰り返したい処理> を実行  $i の値 1 を表示する
  4.
<カウントアップ>  $i = $i + 1 ($i に 1 + 1 を代入する)
  5. 2番に戻る
  2. <条件> を満たすか確認  $i -lt 3 ($i は3より小さい)
  3. <繰り返したい処理> を実行  $i の値 2 を表示する
  4.
<カウントアップ>  $i = $i + 1 ($i に 2 + 1 を代入する)
  5. 2番に戻る
  2. <条件> を満たすか確認  $i -lt 3 ($i は3より小さくないのでここで終了)


while文

while文は次のようなかたちです。

while ( <条件> ) {
<繰り返したい処理>
}

処理の流れは次のようになります。

  1. <条件> を満たすか確認 (満たさなければここで終了)
  2. <繰り返したい処理> を実行
  3. 1番に戻る

while文でも別途カウンタを用意して、
繰り返す処理にカウントアップの記述も加えることで
for文と同様の処理を記述できます。
次をご覧ください。

画像2

実行結果として

0
1
2

が表示されました。
処理の流れは次の通りです。

  1. <条件> を満たすか確認  $i -lt 3 ($i は3より小さい)
  2. <繰り返したい処理> を実行  $i の値 0 を表示する
        次いで  $i = $i + 1 ($i に 0 + 1 を代入する)
  3. 1番に戻る
  1. <条件> を満たすか確認  $i -lt 3 ($i は3より小さい)
  2. <繰り返したい処理> を実行  $i の値 1 を表示する
        次いで $i = $i + 1 ($i に 1 + 1 を代入する)
  3. 1番に戻る
  1. <条件> を満たすか確認  $i -lt 3 ($i は3より小さい)
  2. <繰り返したい処理> を実行  $i の値 2 を表示する
        次いで $i = $i + 1 ($i に 2 + 1 を代入する)
  3. 1番に戻る
  1. <条件> を満たすか確認  $i -lt 3 ($i は3より小さくないのでここで終了)

今回は以上です。
読んでくださりありがとうございました。

今後取り上げてほしいテーマなどありましたら
コメントいただけるとうれしいです。

この記事が気に入ったらサポートをしてみませんか?