2017-08-21 64 views
0

我writen這個測驗驗證碼:PI逼近測驗中psyschool.com

「創建一個計算圓周率的近似功能的基礎上,指定迭代次數。」可以通過4 *(1-1/3 + 1/5-1/7 + 1/9- ...)來計算出p1, π。

它給了我pycharm正確的答案。但是當我在網站上運行它時,它給了我錯誤的答案。我該怎麼辦? 感謝

def piApprox(num): 
    i = 1 
    pi = 0 
    while i <= num: 
     a = (4/((2*i)-1))*((-1)**(i-1)) 
     pi += a 
     print(pi) 
     i += 1 
    return round(pi, 11) 

正確答案:.................我的答案:

3.13959265559 ............. ...... 3.0

4.0 ...................................... 。4.0

3.04183961893 ................... 3.0

3.25236593472 .................. .3.0

+0

你對'num'的輸入值是多少?你對pi的期望值是多少? – Miket25

+0

對您的輸入案例進行測試後,您的代碼會產生您想要的結果?你能否提供一個問題? – Miket25

+0

Python給了我想要的結果。但這個網站(http://www.pyschools.com/quiz/view_question/s5-q10)給出了錯誤的答案 – myregm

回答

0

對我來說,它看起來像循環功能不按預期工作。也許只是刪除它,所以

return pi 

看看是否有所作爲。

+0

好的,這次我明白了。你的訂單錯了。通過在端部和tweakin一些其他的東西乘以你應該在接近這個'DEF piApprox(NUM)的溶液到達: PI = 4.0 I = 1.0 EST = 1.0 而1

+0

它不起作用。 – myregm

+0

您的代碼答案是:3.14259365434 ............... 4.0 ................ 3.19418790923 .......... ......... 3.20036551541 – myregm