建立遞迴函式
你已經看過用迭代方式計算階乘的範例,而同一個問題也可以用遞迴來定義。現在換你動手,實作這個函式的遞迴版本,展現你對遞迴函式的理解!
提醒一下:「階乘」通常以 ! 表示,定義為從 1 到輸入值之間所有正整數的乘積。舉例來說:
- 1! = 1
- 2! = 1 * 2 = 2
- 3! = 1 * 2 * 3 = 6 ……依此類推。
另外要注意,0! 被定義為 1。
在第一步,你需要實作階乘的「基底情況」(base case),也就是在階乘有定義的最小 n! 值時,直接回傳結果。下一步,則要在函式內呼叫自己,實作遞迴的邏輯。
本練習屬於課程
Programming Paradigm 概念
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
def recursive_factorial(n):
# Base case -- check base condition
if ____:
# Return appropriate value
return ____