user1030383
user1030383

Reputation: 1

Finding an approximation of the constant Pi within error [ PYTHON ]

I just started learning Python and I am having a problem writing the function.

The following is an infinite series that calculates an approximation of π : π = 4/1 − 4/3 + 4/5 - 4/7 + 4/9 - 4/11 ...

I am trying to write a function that takes as a parameter a floating point value error and approximates the constant π within error by computing the above sum, term by term, until the absolute value of the difference between the current sum and the previous sum (with one fewer terms) is no greater than error. Once the function finds that the difference is less than error, it should return the new sum.

The following shows the execution of this function on some examples:

>>> aprPi(0.01)
3.1465677471829556
>>> aprPi(0.0000001)
3.1415927035898146

I still don't know how to compute it. Can someone help me?

This is what I have so far:

def aprPi(err):
    first  = 4/test(0) - 4/test(1)
    second = first + 4/test(2) - 4/test(3)
    n=4
    while abs(first - second) > err:
        first = second
        second = second + test(n)
        n +=1
    return second


def test(n):
    sum = 1
    for i in range(n):
        sum += 2

    return sum

Thank you

Upvotes: 0

Views: 1475

Answers (1)

yasar
yasar

Reputation: 13768

You can do something like this:

mypie = 0
denominator = 1
sign = 1

while denominator < 100:
    mypie = mypie + (4.0 / denominator) * sign
    sign = -sign
    denominator = denominator + 2

Upvotes: 1

Related Questions