基本情報技術者過去問題 平成28年春期 午後問9

問9 

次のCプログラムの説明及びプログラムを読んで,設問1〜3に答えよ。

〔プログラムの説明〕
 図形の一部を拡大すると,再び同じパターンの図形が現れる自己相似性をもつ図形を,フラクタル図形と呼ぶ。関数 print_frac は,文字"*"及び空白文字を二次元の格子状に並べてフラクタル図形を描画するプログラムである。
  • 関数 print_frac が描画するフラクタル図形の例を,図1に示す。
    1. 深さが0の図形は,1行1列の文字"*"から成る図形である。
    2. 深さが1以上の図形は,深さが0の図形に対して,(2)で説明する生成規則を,深さの回数だけ繰返し適用して得られる図形である。
  • 深さが d(1以上) の図形は,深さが d−1 の図形を構成する一つ一つの文字を,文字"*"であるか空白文字であるかに応じて,図2に示す生成規則のとおりに,文字の行列で置換したものである。
    1. 文字"*"の部分は,生成パターンと呼ぶ文字の行列で置換する。
    2. 空白文字の部分は,生成パターンと同じ大きさで全ての要素が空白文字の行列で置換する。
  • 生成パターンは,二次元の配列変数 pat によって与える。pat の各要素の値は,空白文字を表す0,又は文字"*"を表す1である。pat の行数,列数及び内容を変更することで,異なるフラクタル図形を描画することができる。
  • 関数 print_frac の仕様は次のとおりである。
    機能:
    深さがdのフラクタル図形を描画する。
    引数:
    d フラクタル図形の深さ
  • 関数 print_frac で使用している関数 exists_at の仕様は次のとおりである。
    機能:
    深さがdのフラクタル図形のi行j列目が空白文字であるか文字"*"であるかを判定する。
    引数:
    i 行数(一番上の行を0行目とする)
    j 列数(一番左の列を0列目とする)
    d フラクタル図形の深さ
    返却値:
    判定結果(O: 空白文字,1: 文字"*")
 ここで,関数の引数に誤りはないものとする。

設問1

深さが2の図形と深さが3の図形は次のとおりである。深さが3の図形において,深さが2の図形の斜線部を置換した部分として正しい答えを,解答群の中から選べ。
pm09_4.gif/image-size:315×172
解答群
  • @
  • A
  • B
  • C

解答選択欄

  •  

解答

  •  

解説

この設問の解説はまだありません。

設問2

配列変数 pat を変更して,深さが3の図形を描画したところ,次のとおりになった。配列変数 pat の変更内容として正しい答えを,解答群の中から選べ。
pm09_5.gif/image-size:388×119
解答群
  • int pat[2][3]={
     {0,1,0},
     {1,0,1}
    };
  • int pat[2][3]={
     {1,1,1},
     {1,0,1}
    };
  • int pat[2][3]={
     {0,1,0},
     {1,1,1},
     {1,0,1}
    };
  • int pat[2][3]={
     {1,1,1},
     {1,0,1},
     {1,0,1}
    };

解答選択欄

  •  

解答

  •  

解説

この設問の解説はまだありません。

設問3

プログラム中の に入れる正しい答えを,解答群の中から選べ。
a に関する解答群
  • p_rn += rn;
    p_cn += cn;
  • p_rn *= rn;
    p_cn*= cn;
  • rn += p_rn;
    cn += p_cn;
  • rn*= p_rn;
    cn*= p_cn;
b,c,d に関する解答群
  • O
  • 1
  • pat[i][j]
  • pat[i % d][j % d]
  • pat[i / d][j / d]
  • pat[i % p_rn][j % p_cn]
  • pat[i / p_rn][j / p_cn]

解答選択欄

  • a:
  • b:
  • c:
  • d:

解答

  • a=
  • b=
  • c=
  • d=

解説

この設問の解説はまだありません。
【28年春期 午後問題】
 問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11 問12 問13
© 2010-2019 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop