基本情報トップに戻る
B難易度: 標準2026年度

基本情報技術者 一問一答B 第186問

問題

再帰関数g(n)=n×g(n-1)でg(1)=1のときg(5)の値は何か。

選択肢

  1. 1120
  2. 224
  3. 360
  4. 4720

正解

1. 120

詳しい解説を見る

解説

再帰関数g(n)=n×g(n-1)、基底条件g(1)=1を順に展開すると、g(5)=5×g(4)=5×4×g(3)=5×4×3×g(2)=5×4×3×2×g(1)=5×4×3×2×1=120となり、120が正解である。これは5の階乗(5!)を再帰で計算する典型例である。24は4!でg(4)の値(展開不足)、60は5×4×3で展開を途中で止めた誤り、720は6!で1段多く展開した誤りである。再帰関数の頻出ポイントは①基底条件(再帰を止める条件)がどこかを最初に確認すること、②呼出しを紙に書いて展開し、基底条件から逆に値を確定させていくこと、の2点である。階乗とフィボナッチ数列は再帰の二大頻出題材として必ず押さえておきたい。

一問一答

科目A 180問+科目B 60問

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。