Python(1) 上機練習 計算階乘之和

2021-10-23 17:53:00 字數 1361 閱讀 4445

題目:

給定n,計算1+2!+3!+…+n!的值

整合開發環境ide:

thonny

思路:

先計算n的階乘,再把階乘相加

計算n的階乘:

n=

int(

input

('n的值為:'))

i=1jc=1

while ijc=jc*

(i+1

) i=i+

1else

:print

('n的階乘是:'

,jc)

此部分**除錯無誤,進行下一步

計算階乘之和s:

n=

int(

input

('n的值為:'))

i=1s=0

while i<=n:

#(要把n!包括進去,所以加了個等號)

#計算i的階乘為jc

s=s+jc

i=i+

1else

:print

('1+2!+3!+...+n!='

,s)

彙總:

n=

int(

input

('n的值為:'))

i=1s=0

while i<=n:

j=1 jc=

1while jjc=jc*

(j+1

) j=j+

1 s=s+jc

i=i+

1else

:print

('1+2!+3!+...+n!='

,s)

發現的問題:

python中不能使用i++語句

條件迴圈whlie使用時,可以沒有else

想法:

用迭代迴圈for怎麼做?

在網上看到了更簡單的方法:

**

n =

int(

input()

)jie =

1sum=0

i =1

while n >= i:

jie = jie * i

sum=sum

+ jie

i = i +

1print

(sum

)

Python 基礎練習 階乘計算

問題描述 輸入乙個正整數n,輸出n 的值。其中n 123 n。演算法描述 n 可能很大,而計算機能表示的整數範圍有限,需要使用高精度計算的方法。使用乙個陣列a來表示乙個大整數a,a 0 表示a的個位,a 1 表示a的十位,依次類推。將a乘以乙個整數k變為將陣列a的每乙個元素都乘以k,請注意處理相應的...

基礎練習 階乘計算

問題描述 輸入乙個正整數n,輸出n 的值。其中n 1 2 3 n。演算法描述 n 可能很大,而計算機能表示的整數範圍有限,需要使用高精度計算的方法。使用乙個陣列a來表示乙個大整數a,a 0 表示a的個位,a 1 表示a的十位,依次類推。將a乘以乙個整數k變為將陣列a的每乙個元素都乘以k,請注意處理相...

基礎練習 階乘計算

問題描述 輸入乙個正整數 n,輸出 n 的值。其中 n 1 2 3 n。演算法描述 n 可能很大,而計算機能表示的整數範圍有限,需要使用高精度計算的方法。使用乙個陣列 a來表示乙個大整數 a,a 0 表示 a的個位,a 1 表示 a的十位,依次類推。將 a乘以乙個整數 k變為將陣列 a的每乙個元素都...