修了試験 2020-12-13実施分 基本情報技術者試験 問8
配列Aが図2の状態のとき,図1の流れ図を実行すると,配列Bが図3の状態になった。 図1のaに入れる操作はどれか。 ここで,配列A,Bの要素をそれぞれA(i,j),B(i,j)とする。

正答4
解説
正解は4です。 図1の流れ図は、iとjをそれぞれ0から7まで変えながら、配列Aの全要素について処理aを実行します。 図2の配列Aは、行0の列1〜6、列1の行0〜7、行3の列1〜4に*がある「F」の形です。 図3の配列Bは、行1の列0〜7、列7の行1〜6、列4の行2〜4に*があり、Aを時計回りに90度回転させた形です。 各選択肢の式でAの*がBのどこに移るかを確かめます。 【選択肢別解説】 1:× B(7-i,7-j)は、上下左右を反転する180度回転です。 A(0,1)の*がB(7,6)に移りますが、図3のB(7,6)は空白なので一致しません。 2:× B(7-j,i)は、反時計回りの90度回転です。 A(0,1)の*がB(6,0)に移りますが、図3のB(6,0)は空白なので一致しません。 3:× B(i,7-j)は、左右の反転です。 A(0,1)の*がB(0,6)に移りますが、図3の行0はすべて空白なので一致しません。 4:○ B(j,7-i)は、時計回りの90度回転です。 Aの行0の列1〜6はBの列7の行1〜6に、Aの列1の全行はBの行1の全列に、Aの行3の列1〜4はBの列4の行1〜4に移り、図3と完全に一致します。 【ポイント】 2次元配列の回転は、代表的な1点を式に代入して行き先を確かめると速く判定できます。 時計回りの90度回転はB(j,n-i)、反時計回りはB(n-j,i)の形になります。まとめて解く
修了試験 2020-12-13実施分を通しで解く(80問)→