基本情報技術者試験 2009年度 = 平成21年度・春期 午前 問8

 自然数n に対して、次のように再帰的に定義される関数f (n )を考える。f (5)の値はどれか。

  f (n ) : if n ≦ 1 then return 1 else return n f (n -1)

ア 6 イ 9 ウ 15 エ 25

解答



解説

 再帰に慣れているのであれば、関数f(n)が、1~nまでの和を求めることは、一目で分かります。したがって、f(5)は15です。

 なお、再帰が苦手であれば、実際にトップダウンで計算すればよいでしょう。

f(5) = 5+f(4)
= 5+(4+f(3))
= 5+(4+(3+f(2)))
= 5+(4+(3+(2+f(1))))
= 5+(4+(3+(2+1)))
= 15


BohYoh.comトップページへ