V−13
下記の関数が準備されたC言語で、引数nが100のときに
下図のコッホ曲線を描画する koch を作成する場合、
ア 〜
エ に
入る値の組合せとして最も適切なものはどれか。
ただし、スタート時点における向きは水平右向きになっていると仮定する。
void forward(int length)
画面上の点が現在の向きに長さlengthだけ移動し、
軌跡を描く。lengthが負のときは後ろ向きに移動する。
void left(int angle)
現在の向きを左向きにangleの角度だけ回転する。
angleが負のときは右向きに回転する。

void koch(int n) {
if (n > ア ){
n = (int)(n / 3);
koch(n); left( イ ); koch(n); left( ウ ); koch(n); left( エ ); koch(n);
} else {
foward(n);
}
}
┌─┬────┬────┬────┬────┐
│ │ ア │ イ │ ウ │ エ │
├─┼────┼────┼────┼────┤
│@│ 1│ 60│−120│ 60│
├─┼────┼────┼────┼────┤
│A│ 4│ 120│ −60│ 120│
├─┼────┼────┼────┼────┤
│B│ 7│ 60│−120│ 60│
├─┼────┼────┼────┼────┤
│C│ 10│ 120│ −60│ 120│
├─┼────┼────┼────┼────┤
│D│ 13│ 60│−120│ 60│
└─┴────┴────┴────┴────┘
答えはこちら
posted by ファーストマクロ at 08:32|
Comment(0)
|
H27技術士一次試験(情報工学)