計算圓周率的值,我試圖用這個公式計算圓周率的值:不正確的答案,同時從給定的系列
我這樣寫代碼,發現它對於一個給定n
:
def pisum(n):
sum=3.0
x=2.0
while (n>0):
if n%2==1:
sum=sum+(4/(x*(x+1)*(x+2)))
else :
sum=sum-(4/(x*(x+1)*(x+2)))
x=x+2
n=n-1
return str(sum)
它運行正常n=0
和n=1
並給出輸出3.0,3.16666666667。但是對於n=50
,輸出應該是3.1415907698497954,但它會給出2.85840923015。爲什麼這麼差?請幫助糾正我做錯了什麼。
「但是對於n = 50,輸出應爲3.1415907698497954 ......」你爲什麼這樣認爲? –
@ IgnacioVazquez-Abrams我看過的系列說這個。它由1501年印度數學家Kelallur Nilakantha Somayaji給出。你可以在網上查詢:) – mat7
不,你*可以提供鏈接。 *您*是提問的人。 –