a[行, 列] の順です。整数型の2次元配列: data ← {{1, 2, 3}, {4, 5, 6}}
内側の {} が各行のデータを表します。上記は2行3列の配列です。
2次元配列を全て処理するには、for文を2重にネストして使います。 外側のループで行を、内側のループで列を順に処理するのが基本パターンです。
整数型の2次元配列: score ← {{70, 80}, {60, 90}, {85, 75}}
整数型: i, j
// 3人×2教科の点数を全て出力
for ( i を 1 から 3 まで 1 ずつ増やす ) // 行(生徒)
for ( j を 1 から 2 まで 1 ずつ増やす ) // 列(教科)
score[i, j] を出力
endfor
endfor
// 出力:70 80 60 90 85 75
整数型の2次元配列: score ← {{70, 80}, {60, 90}, {85, 75}}
整数型: i, j
整数型: total ← 0
for ( i を 1 から 3 まで 1 ずつ増やす )
for ( j を 1 から 2 まで 1 ずつ増やす )
total ← total + score[i, j]
endfor
endfor
total を出力 // 出力:460
「生徒ごとの合計点」を求めるには、行ループの外に合計変数を置きます。
整数型の2次元配列: score ← {{70, 80}, {60, 90}, {85, 75}}
整数型: i, j
整数型: rowTotal
for ( i を 1 から 3 まで 1 ずつ増やす )
rowTotal ← 0 // 行ごとにリセット
for ( j を 1 から 2 まで 1 ずつ増やす )
rowTotal ← rowTotal + score[i, j]
endfor
rowTotal を出力 // 1行目:150、2行目:150、3行目:160
endfor
次の配列の定義において data[2, 3] の値はどれか。
整数型の2次元配列: data ← {{1, 2, 3}, {4, 5, 6}}
次のコードを実行したとき sum の値はいくつになるか。
整数型の2次元配列: table ← {{1, 2}, {3, 4}}
整数型: i
整数型: sum ← 0
for ( i を 1 から 2 まで 1 ずつ増やす )
sum ← sum + table[i, 1]
endfor
次のコードを実行したとき total の値はいくつになるか。
整数型の2次元配列: mat ← {{1, 2, 3}, {4, 5, 6}}
整数型: i, j
整数型: total ← 0
for ( i を 1 から 2 まで 1 ずつ増やす )
for ( j を 1 から 3 まで 1 ずつ増やす )
total ← total + mat[i, j]
endfor
endfor
次のコードは2行3列の2次元配列の全要素を出力するプログラムである。空欄 [ A ] と [ B ] の組み合わせとして正しいものを選びなさい。
整数型の2次元配列: data ← {{10, 20, 30}, {40, 50, 60}}
整数型: i, j
for ( i を 1 から [ A ] まで 1 ずつ増やす )
for ( j を 1 から [ B ] まで 1 ずつ増やす )
data[i, j] を出力
endfor
endfor
次のコードを実行すると mat[1, 2] と mat[2, 1] の値はどうなるか。
整数型の2次元配列: mat ← {{1, 2}, {3, 4}}
整数型: tmp
tmp ← mat[1, 2]
mat[1, 2] ← mat[2, 1]
mat[2, 1] ← tmp