欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Python階乘怎么求和-創(chuàng)新互聯(lián)

這篇文章主要介紹了Python階乘怎么求和,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)主營扶風(fēng)網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,APP應(yīng)用開發(fā),扶風(fēng)h5成都微信小程序搭建,扶風(fēng)網(wǎng)站營銷推廣歡迎扶風(fēng)等地區(qū)企業(yè)咨詢

題目描述:

獲得用戶輸入的整數(shù)n,輸出 1!+2!+…+n!的值。

如果輸入數(shù)值為0、負(fù)數(shù)、非數(shù)字或非整數(shù),輸出提示信息:輸入有誤,請輸入正整數(shù)。

方法一:

#factTest1
def main():
 a = input()
 sum = 0
 if a.isdigit():
 n = eval(a)
 if n > 0:
 fact = 1
 for i in range(1, n+1):
 fact *= i
 sum += fact
 print(sum)
 else:
 print("輸入有誤,請輸入正整數(shù)")
 else:
 print("輸入有誤,請輸入正整數(shù)")
main()

方法二、遞歸思想


#factTest2
import sys
sys.setrecursionlimit(5000)
def getSum(i):
 sum = 0
 if i==0:
 return 0
 else:
 for x in range(1,i+1):
 sum += fact(x)
 return sum
def fact(m):
 if m==0:
 return 1
 else:
 return m*fact(m-1)
def main():
 n = input()
 if n.isdigit():
 a = eval(n)
 if a>0:
 result = getSum(a)
 print(result)
 else:
 print("輸入有誤,請輸入正整數(shù)")
 else:
 print("輸入有誤,請輸入正整數(shù)")
main()

問題總結(jié):

當(dāng)使用遞歸方法求1024的階乘時,出現(xiàn)了一個異常:RecursionError: maximum recursion depth exceeded in comparison,超出了遞歸的較大深度。一些網(wǎng)友提到Python中默認(rèn)的較大遞歸深度為1000,但在實(shí)際測試中,我的電腦到997的時候就出現(xiàn)異常了,不知道這是由什么決定的。因此,為了能夠計(jì)算1024的階乘,需要為較大遞歸深度賦予一個更大的值。這里可以采用以下方法:

import sys
sys.setrecursionlimit(5000) #修改為5000

另外,也可以查看較大遞歸深度:

import sys
sys.getrecursionlimit()  # output:1000

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享Python階乘怎么求和內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,詳細(xì)的解決方法等著你來學(xué)習(xí)!

網(wǎng)站題目:Python階乘怎么求和-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://chinadenli.net/article26/pphjg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、域名注冊、微信公眾號、小程序開發(fā)、響應(yīng)式網(wǎng)站、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司