from math import *

def f(x):
    return sqrt(-(x**2) + 1)

def distance(x1, y1, x2, y2):
    return sqrt(abs(x1 - x2)**2 + abs(y1 - y2)**2)

def calc_pi(res):
    last_x = 0
    last_y = 1

    summ = 0

    for x in tuple(range(1, res)) + (res,):
        x /= res

        y = f(x)

        summ += distance(x, y, last_x, last_y)

        last_x = x
        last_y = y

    return summ * 2

i = 1

while True:
    print(f"Precision 10^{i}: ", end="", flush=True)
    print(calc_pi(10 ** i), flush=True)

    i += 1
