public
Created

Pi with Machin's formula

  • Download Gist
pi.py
Python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#!/usr/bin/env python
# http://en.literateprograms.org/Pi_with_Machin's_formula_(Python)?action=history&offset=20080618194038
 
def arccot(x, unity):
sum = xpower = unity // x
n = 3
sign = -1
while 1:
xpower = xpower // (x*x)
term = xpower // n
if not term:
break
sum += sign * term
sign = -sign
n += 2
return sum
 
def pi(digits):
unity = 10**(digits + 10)
pi = 4 * (4*arccot(5, unity) - arccot(239, unity))
return pi // 10**10
 
if __name__ == '__main__':
print( pi(100000) )

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.