For Step Next 繰り返し [VB]

For … Step … Next は応用が利く

繰返し制御文
For Next
For Next 入れ子
For Step Next
For Each Next
Exit For 強制終了
Do While Loop
Do Until Loop
Do Loop While
Do Loop Until
Exit Do 強制終了

For Step Next を使ったプログラムを作成します。

For Step Next を使うことによって、たとえば、1~100までの和、奇数の和、偶数の和を簡単に求めることができます。応用範囲が広いので、使う機会が多いと思います。

For Step Next の書式は次のようになります。

開始値は繰返しを始める整数で、終了値は繰返しを終える整数です。Stepの数値は繰返し変数の増減値を指定します。

1ずつ増加させるときは、Step 1 になりますが、Step 1 の時は省略するのが普通です。

For 繰返し変数 As Integer = 開始値 To 終了値 Step 数値
  ..........
  .......
  ..........
Next

次の例では、変数 i は 1 から開始して、Step 2 なので、 i は、1 → 3 → 5 → 7 → 9 のように増加していきます。終了値が 10 になっているので、i は 9 までが実行された後、Next の次行に制御が移ります。

For i As Integer = 1 To 10 Step 2
  .......
Next

For Step Next サンプルプログラム1

ForNextStep

For Step Next を使って、1~10までの和を求めるプログラムを作成します。Step を1ずつ増加させるので、Step 1 を省略します。

Console.Writeは、Console.WriteLineと違い、画面表示のときに改行しません。

ソースリストの枠内をクリックすると全選択できます。

Module Module1

  Sub Main()
      Console.Write("* 1~10までの")
      Console.WriteLine("整数の和を求める *")

      ' 変数の宣言
      Dim sum As Integer = 0
      ' 1~10までの和を求める
      For i As Integer = 1 To 10
          sum = sum + i
      Next

      ' 合計を表示
      Console.WriteLine()    ' 1行空白にする
      Console.Write("1~10までの和は ")
      Console.Write(sum)
      Console.WriteLine(" です")
      Console.WriteLine()
  End Sub

End Module

For Step Next サンプルプログラム2

For Step Next を使って、1~100までの偶数の和を求めるプログラムを作成します。

繰り返し変数 i は初期値を2に設定し、Step値には 2 を指定するので、変数 i は、2, 4, 6, 8, … 100 と、2ずつ増加していくので、その変数 i を加算していけば、1~100までの偶数の和を求めることができます。

Module Module1

  Sub Main()
      Console.Write("* 1~100までの")
      Console.WriteLine("偶数の和を求める *")

      ' 変数の宣言
      Dim sum As Integer = 0
      ' 1~100までの偶数の和を求める
      For i As Integer = 2 To 100 Step 2
          sum = sum + i
      Next

      ' 合計を表示
      Console.WriteLine()    ' 1行空白にする
      Console.Write("1~100までの偶数の和は ")
      Console.Write(sum)
      Console.WriteLine(" です")
      Console.WriteLine()
  End Sub

End Module

【練習】For Step Next を使って、1~100までの奇数の和を求めるプログラムを作成してください。偶数と同様 変数iに注目すれば簡単です。

次回は、For … Next 二重ループ を使って、九九算表を表示するプルグラムを作成します。

次回:For … Next 二重ループ