def
frac
(n):
r =1if n<=1:
if n==
0or n==1:
return
1else
:print
('n 不能小於0'
)else
:for i in
range(1
, n+1)
: r *= i
return r
print
(frac(5)
)print
(frac(6)
)print
(frac(7)
)
120
7205040
def
frac
(n):
if n<=1:
if n==
0or n==1:
return
1else
:print
('n 不能小於0'
)else
:return n * frac(n-1)
print
(frac(5)
)print
(frac(6)
)print
(frac(7)
)
120
7205040
說明:python 在 functools 模組提供了 reduce() 函式,該函式使用指定函式對序列物件進行累計。
檢視函式資訊:
('n 不能小於0'
)else
:return functools.
reduce
(fn,
range(1
, n+1)
(frac(5)
(frac(6)
(frac(7)
)120
7205040
# 使用 lambda 簡寫
import functools
deffrac
(n):
if n<=1:
if n==
0or n==1:
return
1else
:print
('n 不能小於0'
)else
:return functools.
reduce
(lambda x, y: x*y,
range(1
, n+1)
)print
(frac(5)
)print
(frac(6)
)print
(frac(7)
)
120
7205040
計算n的階乘
c語言學習初期,相信你肯定編寫過 計算n的階乘 吧!怎麼樣,是不是覺得過於簡單了呢?哈哈,就讓我們再次回溫這道題,詳解它的編寫過程 從最初的構思到具體的設計,體會乙個腦海中的idea切切實實轉化為 的奇妙過程 下面進入正題 說明 本題我們暫時不 溢位問題,所以就拿 計算5的階乘 舉例 思路構想 計算...
python筆試題 計算n的階乘
計算n!例如n 3 計算3 2 1 6 求10!方法一 可以用python裡面的reduce函式,reduce 函式會對引數序列中元素進行累積 1.用lambda函式 from functools import reduce a 10 b reduce lambda x,y x y,range 1 ...
python計算6的階乘 python求n的階乘
階乘是基斯頓 卡曼 christian kramp,1760 1826 於1808年發明的運算符號,是數學術語。乙個正整數的階乘 factorial 是所有小於及等於該數的正整數的積,並且0的階乘為1。自然數n的階乘寫作n 下面我們來看一下使用python計算n的階乘的方法 第一種 利用functo...