擅长:python、mysql、java
<p>代码的更正版本如下</p>
<pre><code>def approxPi(num):
prev=1
current=2
i=1
sign = 1;
while abs(current-prev)>num:
prev=current
current+= sign * (4/i)
sign = -sign
i += 2
current -= 2
return current
</code></pre>
<p>数列的每一个分数的分母是2加上前一个,因此<code>i += 2</code>。<code>sign = -sign</code>用于在序列中交替使用正负号。<code>current -= 2</code>是从序列中减去2,因为<code>current = 2</code>是序列的第一个值。最后,需要<code>abs()</code>来获得误差的绝对值,因为它可以在正误差值和负误差值之间交替。你知道吗</p>