二次元配列 [VB]

VB2012-2017

宣言方法

添え字がふたつある配列は2次元配列と言います。今回は2次元配列について勉強します。

2次元配列も考え方は1次元配列と同様です。2次元配列を宣言するためには、()内の添え字を2つカンマで区切って宣言します。

左側の添え字が行、右側の添え字が列を表しています。

  ' 整数2次元配列変数の宣言
  Dim nedan(5, 4) As Integer

個別の配列要素は、

nedan(0, 0)、nedan(0, 1)、nedan(0, 2)、nedan(0, 3)、nedan(0, 4)

nedan(1, 0)、nedan(1, 1)、nedan(1, 2)、nedan(1, 3)、nedan(1, 4)

nedan(2, 0)、nedan(2, 1)、nedan(2, 2)、nedan(2, 3)、nedan(2, 4)

nedan(3, 0)、nedan(3, 1)、nedan(3, 2)、nedan(3, 3)、nedan(3, 4)

nedan(4, 0)、nedan(4, 1)、nedan(4, 2)、nedan(4, 3)、nedan(4, 4)

nedan(5, 0)、nedan(5, 1)、nedan(5, 2)、nedan(5, 3)、nedan(5, 4)

のように、カンマで区切って添え字を2つ指定します。添え字は共に0から始まるので、6 × 5 で30個の要素となります。

2次元配列を使う時は、添え字を変数にして、ループを利用するので、プログラムを短くすることができます。

掛け算の九九を表示するプログラム

掛け算の九九の値を、2次元配列にセットするプログラムを作成します。kuku(0,0)~kuku(0,8)に1の段、kuku(1,0)~kuku(1,8)に2の段、kuku(2,0)~kuku(2,8)に3の段のように格納します。

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

Module Module1

    Sub Main()
        ' 2次元配列文字列変数の宣言
        Dim kuku(8, 8) As Integer
            ' 各段の計算
            For i As Integer = 1 To 9
            For j As Integer = 1 To 9
                kuku(i - 1, j - 1) = i * j
            Next
        Next
        ' 結果の確認
        For i As Integer = 1 To 9
            Console.WriteLine(i & "の段")
            For j As Integer = 1 To 9
                Console.Write(i & "x" & j & "=" )
                Console.Write(kuku(i - 1, j - 1))
                Console.Write(", ")
            Next
            Console.WriteLine()    ' 改行
        Next
    End Sub

End Module

[Ctrl]キーを押したまま、[F5]キーを押して実行します。

九九表実行結果

少し見づらいですね。Space関数を使って改良したサンプル があります。こちらも参考にしてください。