民國109年 第2梯次 電腦軟體設計(JAVA)乙級 學科

第25題

下列遞迴演算法,下述何者正確?

題目

下列遞迴演算法,下述何者正確?

  1. (1) mysteryX(0)之結果為0
  2. (2) mysteryX(3)之結果為8
  3. (3) mysteryX(5) 之結果為240
  4. (4) mysteryX(7)之結果為5040

官方答案

(4) mysteryX(7)之結果為5040

解析

此遞迴函式的終止條件在 n 為 0(或 1)時回傳 1,否則回傳 n 乘上 mysteryX(n-1),即階乘的遞迴寫法,mysteryX(n)=n!。代入得 mysteryX(0)=1、mysteryX(3)=3×2×1=6、mysteryX(5)=5!=120、mysteryX(7)=7!=5040。故只有 mysteryX(7)=5040 正確。mysteryX(0)=0 是把基底回傳值誤設為 0;8 與 240 則是誤用 2 的次方或累乘過程出錯所得的數值。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料