Python求1到n的階乘之和的實例
更新時間:2024年06月25日 16:30:49 作者:算法與編程之美
這篇文章主要介紹了Python求1到n的階乘之和的實例,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
Python求1到n的階乘之和
問題描述
從鍵盤輸入n,求1+2!+3!+...+n!的和
對于此題,我們可以用定義一個函數來解決,接著用一個for循環(huán)語句來設置從1到n,接下來一起來編寫這個代碼吧。
解決方案
假定這個函數名稱為f
def f(x): f = 1 for i in range(1,x+1): f *= i return f n = int(input(“請輸入正整數:”)) print(“和為:%d“ % sum(map(f,range(1,n+1))))
若輸入正整數3,我們來運行一下。
圖3.1 運行流程
注:要注意return的使用,不能忽略
心得:
- 在此代碼中,我們需要知道for循環(huán)語句的使用以及定義def函數,注意我們要求的是1到n,按照左閉右開的規(guī)則,需要填寫的是n+1,在函數后要記得寫上return。
- 最后將打印出來的會是一個整數所以需要用%d。編寫時注意符號的使用,不能漏用。
- 在寫此類題時,只需關注常見代碼的注意事項再稍加細心即可。
python求前n項的階乘之和
從鍵盤輸入一個整數n,求前n項的階乘之和,1+2!+3!+…+n!的和
輸入格式:
- 輸入一個大于1的整數。
- 例如:輸入20。
輸出格式:
- 輸出一個整數。
- 例如:2561327494111820313。
輸入樣例:
- 在這里給出一組輸入。
- 例如:
- 20
輸出樣例:
- 在這里給出相應的輸出。
- 例如:
- 2561327494111820313
python代碼:
def f(n): ans = 1 for i in range(1,n+1): ans *= i #等價于ans = ans * 2 return ans n = int(input()) sum = 0 for i in range(1,n+1): sum += f(i) print(sum)
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python編程matplotlib繪圖挑鉆石seaborn小提琴和箱線圖
這篇文章主要為大家介紹了Python編程如何使用matplotlib繪圖來挑出完美的鉆石以及seaborn小提琴和箱線圖,有需要的朋友可以借鑒參考下,希望能夠優(yōu)速幫助2021-10-10