import numpy as np

def MachinPi(epsilon):
    n = 1 + int((np.log(20)-np.log(epsilon))/np.log(5))
    s = 0
    for k in range(n + 1):
        s = s+ (-1)**k*(4*(1/5)**(2*k + 1) - (1/239)**(2*k + 1))/(2*k + 1)
    return(4*s)

eps=1e-15
print(MachinPi(eps))