情報処理安全確保支援士試験の公開問題

2018 春 午前I 問02

このページはIPA Advancedが運営する非公式の学習用ページです。IPAとの提携・公認を示すものではありません。

問題文

非負の整数m,nに対して次のとおりに定義された関数Ack(m,n)がある。Ack(1,3)の値はどれか。 Ack(m,n) = ⎧ Ack(m−1,Ack(m,n−1)) (m>0かつn>0のとき) ⎨ Ack(m−1,1)       (m>0かつn=0のとき) ⎩ n+1          (m=0のとき)

選択肢

  • ア: 3
  • イ: 4
  • ウ: 5
  • エ: 6

解説の要点

添付の公式解答表では,問2の正解はウ。定義より,Ack(0,n)=n+1です。まずAck(1,0)=Ack(0,1)=2。n>0ではAck(1,n)=Ack(0,Ack(1,n−1))=Ack(1,n−1)+1となるので,Ack(1,1)=3,Ack(1,2)=4,Ack(1,3)=5と求められる。

呼出しスタックを調べ、引数に関数呼出しを含む場合の計算過程を、小さな例で図にできますか?

関連する問題一覧

公式出典

訂正・編集方針

解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。

  • 運営・編集方針を読む
  • 関連問題