1. 程式人生 > >python-階乘累加和

python-階乘累加和

階乘:也是數學裡的一種術語;階乘指從1乘以2乘以3乘以4一直乘到所要求的數;在表達階乘時,就使用“!”來表示。如h階乘,就表示為h!;階乘一般很難計算,因為積都很大。

提問:求1+2!+3!+...+20!的和,如果輸入非正整數或者字元等就輸出“輸入有誤,請輸入正整數”

程式

#測試2 第二題   階乘累加和
x = input()
if x.isdigit():
    a = eval(x)
    s = 0
    b = 1
    if a >0 and a%1 == 0:
        for i in range(a+1):
            s = s + b* i
            if i == 0:
                continue
            elif i == a:
                print(s)
            else:
                b = b * i
    else:
        print("輸入有誤,請輸入正整數")
else:
    print("輸入有誤,請輸入正整數")

這是學習python的課程中的課後作業,在如何確定輸入是否是數字還是字元上花了挺多時間,後來搜了一下,可以直接使用

str.isdigit()
這個函式,就省事很多了。