您好,登錄后才能下訂單哦!
今天小編給大家分享的是用python遞歸求階乘怎么做,相信很多人都不太了解,為了讓大家更加了解python遞歸求階乘的方法,所以給大家總結了以下內容,一起往下看吧。一定會有所收獲的哦。
python遞歸求階乘的方法
階乘:例如 5! 指的是“5的階乘”,即 5! = 1*2*3*4*5。
“遞歸”就是對自身進行調用的函數。
def f(x): if x == 0: return 0 elif x == 1: return 1 else: return (x * f(x-1)) print(f(5))
代碼解釋:如果 x=5,那么就返回 5*f(4) 的值。而想知道這個值,就得先算出 f(4) 等于多少。根據函數 f(x),f(4) = 4*f(3),所以 f(5) = 5*4*f(3)。以此類推,推到 f(5) = 5*4*3*2*f(1)。函數 f(x) 說了,當 x==1 時,返回值為 1。所以:f(5) = 5*4*3*2*1 = 120。所以,輸出結果如下:
120
聽起來好像很麻煩,感覺不好理解。如果不用遞歸函數呢?用最基本的代碼,可以寫成:
f = 1 for i in range(1,6): f = f * i print(f)
結果一樣是120。
以上就是用python遞歸求階乘怎么做的詳細內容了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎來億速云行業資訊!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。