アルゴリズムとプログラミング
平成21年度 春期 基本情報技術者試験 午前 問8
自然数 n に対して,次のように再帰的に定義される関数 f(n) を考える。f(5) の値はどれか。
f(n) : if n≦1 then return 1 else return n+f(n-1)
答えを選ぶ
出典:平成21年度 春期 基本情報技術者試験 午前 問8(問題文は IPA の公開問題。解説は当サイト作成)
答えと解説を見る
正解:ウ
覚える知識
再帰関数のトレース計算
再帰関数は終了条件まで自身を呼び、戻りながら値を合成して評価する。
この問題で必要なこと
f(n)=n+f(n-1)、f(1)=1 なので f(5)=5+4+3+2+1=15 となる。
ひっかけ
f(5)=5+4のように途中で止める。
この知識の出題:本試験系 8 回・免除試験 11 回(公開問題での観測値)