題目:
給定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的每乙個元素都...