For Next 多重ループ サンプル [VB]

Visual Basic 文法[2015 2013 2012]

何重でも内側に書くことが可能

For Next は、For Next の内側にさらに、For Next を使って何重でも内側に書くことができます。しかし、ルーフが深くなりすぎると、プログラムが複雑になり、間違い(バグという)の元になります。

3重ループ以上の多重ループを使うときは、ループ内のプログラムが長くならないようにします。

九九を表示するサンプルプログラム

For Next の2重ループを使って、掛け算の九九の結果を表示するプログラムを作成します。

Console.Writeは、同じ行に続けて表示したいときに使います。Console.WriteLineと違って、改行しません。

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

Module Module1

  Sub Main()
      ' 九九表のタイトル表示
      Console.WriteLine("*** 九九表 ***")
      Console.WriteLine()    ' 改行
      Console.Write("            ")    ' 調整用空白
      For i As Integer = 1 To 9
        Console.Write(" X" & i)
      Next
      Console.WriteLine()    ' 改行

      ' 九九を二重ループを使って計算
      For j As Integer = 1 To 9
          Console.Write(j & "のだん --> ")
          For k As Integer = 1 To 9
              ' 九九計算と表示
              Console.Write("{0,3:#0}", j * k)
          Next
          ' 各段終了時に改行
          Console.WriteLine()
      Next
  End Sub

End Module

Console.Write(("{0,3:#0}"), i * j)の {0,3:d} は、書式指定文字列と呼ばれ、演算結果をいろいろ形式で表示するために使います。

{0,3:d}は、1番のデータ i * j を、3桁右詰の10進数で表示(1桁や2桁のときは、残りは空白)します。

書式指定文字列についてはこちらからどうぞ

実行結果は次のようになります。

実行結果

[広告]