アルゴリズムとプログラミング
令和元年度 秋期 基本情報技術者試験 午前 問11
自然数 n に対して,次のとおり再帰的に定義される関数 f(n) を考える。f(5) の値はどれか。
f(n): if n≦1 then return 1 else return n+f(n-1)
- ア 6
- イ 9
- ウ 15
- エ 25
出典:令和元年度 秋期 基本情報技術者試験 午前 問11
答えと解説を見る
正解:ウ
覚える知識
再帰関数のトレース計算
再帰関数は自分自身を呼び出し、終了条件で打ち切って結果を畳み込む。
この問題で必要なこと
f(5)=5+f(4)=…=5+4+3+2+1=15 と、n≦1のとき1を返す条件まで展開して求める。
ひっかけ
展開ミスで階乗や5²と取り違えさせる。
この知識の出題:本試験系 8 回・免除試験 11 回(公開問題での観測値)