平成25年度 技術士第一次試験問題【専門科目】
【16】情報工学部門
V−1
C言語で、[関数の定義]で示すfibonacci 関数を、[関数の呼び出し]で呼び出した。
このとき、変数 x に代入される値はどれか。

[関数の定義]
 int fibonacci (int a, int b, int n) {
  if (n == 1) { return a; }
  else if (n == 2) { return b; }
  else { return fibonacci (a, b, n-2) + fibonacci (a, b, n-1); }
 }
[関数の呼び出し]
 int x = fibonacci (2, 5, 4);

 @ 8  A 12  B 13  C 21  D 31




【正解】 A
x = fibonacci (2, 5, 4)
=
fibonacci (2, 5, 4-2) + fibonacci (2, 5, 4-1)
=
fibonacci (2, 5, 2) + fibonacci (2, 5, 3)
= 5 + fibonacci (2, 5, 3-2) + fibonacci (2, 5, 3-1)
= 5 +
fibonacci (2, 5, 1) + fibonacci (2, 5, 2)
=
5 + 2 + 5
= 12

よって、
 x = 12

【類題】
H18 W-5

EXCELのマクロのご相談なら ファーストマクロ 



目次 V−2
ファーストマクロ TOPページ