res = 1
成都創(chuàng)新互聯(lián)專業(yè)提供四川樂山服務器托管服務,為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買四川樂山服務器托管服務,并享受7*24小時金牌售后服務。
for i in range(1, 11): #1~10的階乘
ress *= i
print(res)
一個整數(shù)的階乘就是所有小于等于該數(shù)字的正整數(shù)的積。舉例說明3的階乘就是3*2*1。
電腦:WIN10
軟件:ISO
軟件:python
1、用def代碼創(chuàng)建一個函數(shù),名稱為func,參數(shù)為n
def func(n):
2、創(chuàng)建一個變量res,賦值為函數(shù)的參數(shù)n,代碼如下:
res = n。
3、然后寫入for range循環(huán),具體代碼如下:
for i in range(1,n):
4、接下來在for循環(huán)當中進行計算并且返回res,具體代碼如下:
res *= i
return res。
5、用print代碼打印輸出3的階乘,代碼如下:
print(func(3))。
6、以上代碼實現(xiàn)了階乘的運算,另外我們還可以用遞歸的方式進行。代碼如下:
def func1(n):
if n==1:
return 1
else:
return n *func1(n-1)
print(func1(3))
遞歸方式是函數(shù)自己調用自己。
#python 3.6.4
sum = 0
temp=1
shu = int(input("請輸入所求的一個數(shù)階乘倒數(shù)的累加和: "))
for i in range(1, shu+1):
temp=temp*i
sum=sum+1.0/temp?
print("1!+2!+.....+{0}={1}".format(shu,sum))
測試:
請輸入所求的一個數(shù)階乘倒數(shù)的累加和: 1
1!+2!+.....+1=1.0
請輸入所求的一個數(shù)階乘倒數(shù)的累加和: 2
1!+2!+.....+2=1.5
請輸入所求的一個數(shù)階乘倒數(shù)的累加和: 3
1!+2!+.....+3=1.6666666666666667
請輸入所求的一個數(shù)階乘倒數(shù)的累加和: 10
1!+2!+.....+10=1.7182818011463847
請輸入所求的一個數(shù)階乘倒數(shù)的累加和: 100
1!+2!+.....+100!=1.7182818284590455
#n充分大,結果就是e-1(e=2.718281828...)
def recursion(n):
if n==1:
return 1
else:
return n*recursion(n-1)
list=[]
#定義一個空的列表,將調用遞歸函數(shù)生成的階乘值追加到列表
print("將1-10的階乘寫入列表,使用sum函數(shù)求和") #顯示效果明顯
for i in range(1,11):
list.append(recursion(i))# 將調用遞歸函數(shù)生成的階乘值追加到列表
print(sum(list)) #列表求和
sum_0=0
#顯示效果明顯,center(80,"*")標題放置位置
print("for循環(huán)直接調用遞歸函數(shù)求和".center(80,"*"))
for i in range(1,11):
sum_0 +=recursion(i)
print(sum_0)
這是1-10的階乘求和,你可以參考下!
輸出的結果