アルゴリズムとプログラミング

令和元年度 秋期 基本情報技術者試験 午前 問9

配列 A が図 2 の状態のとき,図 1 の流れ図を実行すると,配列 B が図 3 の状態になった。図 1 の a に入れる操作はどれか。ここで,配列 A,B の要素をそれぞれ A(i, j),B(i, j) とする。
図1 流れ図: 開始 → ループ1(i:0, 1, 7(注))→ ループ2(j:0, 1, 7(注))→ 処理 a → ループ2 終端 → ループ1 終端 → 終了。(注)ループ端の繰返し指定は,変数名:初期値,増分,終値 を示す。 図2 配列 A の状態(行 i=0..7 ↓,列 j=0..7 →,* の位置): i=0: j=1,2,3,4,5,6 i=1: j=1 i=2: j=1 i=3: j=1,2,3,4 i=4: j=1 i=5: j=1 i=6: j=1 i=7: j=1 図3 実行後の配列 B の状態(* の位置): i=0: なし i=1: j=0,1,2,3,4,5,6,7 i=2: j=4,7 i=3: j=4,7 i=4: j=4,7 i=5: j=7 i=6: j=7 i=7: なし
答えを選ぶ

出典:令和元年度 秋期 基本情報技術者試験 午前 問9(問題文は IPA の公開問題。解説は当サイト作成)

答えと解説を見る

正解:エ

覚える知識

2次元配列の回転・転置操作の読解

2次元配列の回転は、元の添字(i,j)を別の添字へ写す式で表せる。

この問題で必要なこと

配列AとBの要素位置の対応から、添字の変換式(回転)を導く。

ひっかけ

対称な変換(反転・転置)の式と混同させる。

この知識の出題:本試験系 2 回・免除試験 2 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「配列の添字操作と表計算の参照」で学ぶ

同じ知識の過去問