Skip to content

Instantly share code, notes, and snippets.

@1995eaton
Created March 5, 2015 17:36
Show Gist options
  • Save 1995eaton/9b0730fae5683673f09c to your computer and use it in GitHub Desktop.
Save 1995eaton/9b0730fae5683673f09c to your computer and use it in GitHub Desktop.
Chudnovsky formula
from math import factorial
from gmpy2 import mpz, mpq, get_context
def pi(iterations):
result = mpq()
for k in range(iterations):
num = mpz(factorial(6*k)*(13591409+545140134*k))
den = mpz(factorial(3*k)*factorial(k)**3*(-640320)**(3*k))
result += mpq(num, den)
return mpq(640320)**mpq(3, 2) * mpq(1, result * mpq(12))
get_context().precision = 3500
print(str(pi(75))[:1001])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment