↓↓クリックして頂けると励みになります。
【18 | グラフ】 << 【ホーム】 >> 【20 | 表】
Rubyの二次元配列は、要素が配列である配列のことです。
つまり、配列の要素が他の配列である配列です。
これにより、表や行列などの構造を表現することができます。
二次元配列は行と列の両方を持つデータ構造を表現するのに便利です。
Visual Studio Codeで以下のプログラムを作ってみましょう。
新規作成 【hairetsu5.rb】
# hairetsu5.rb class Hairetsu5 data = [ [ 'a1', 'a2', 'a3' ],[ 'b1', 'b2', 'b3' ],[ 'c1', 'c2', 'c3' ],[ 'd1', 'd2', 'd3' ] ] for i in 0..(data.length-1) do for j in 0..(data[0].length-1) print (data[i][j]).to_s + ',' end puts '' end puts '' for j in 0..(data[0].length-1) do for i in 0..(data.length-1) do print (data[i][j]).to_s + ',' end puts '' end end
今回のプログラムを見てください。
配列データはこのようになっています。
data = [ [ 'a1', 'a2', 'a3' ],[ 'b1', 'b2', 'b3' ],[ 'c1', 'c2', 'c3' ],[ 'd1', 'd2', 'd3' ] ]
今までの配列は、data[0]
やdata[3]
などと表していました。
二次元配列は、data[0][3]
やdata[1][5]
などと表します。
では、実際にどのように格納場所を表せばよいかを見てみましょう。
data[0][0] はa1を表しています。 data[0][2]は a3を表します。 data[2][2]は c2です。 data = [[ data[0][0], data[0][1], data[0][2] ], [ data[1][0], data[1][1], data[1][2] ], [ data[2][0], data[2][1], data[2][2] ], [ data[3][0], data[3][1], data[3][2] ]]
出力結果を見てみましょう。
~/Desktop/Programming/RB $ ruby hairetsu5.rb a1,a2,a3, b1,b2,b3, c1,c2,c3, d1,d2,d3, a1,b1,c1,d1, a2,b2,c2,d2, a3,b3,c3,d3,
【18 | グラフ】 << 【ホーム】 >> 【20 | 表】
↓↓クリックして頂けると励みになります。