All pastes #503834 Raw Edit

Mine

public text v1 · immutable
·published 2007-05-23 01:43 UTC
rendered paste body
from math import *

def pi_frac(min, max):
    min_denom = None
    min_error = 1.0
    for b in xrange(min, max):
        a = round(pi * b)
        error = (log(b) + log(a) + 2) / -log(abs(a/b - pi))
        if min_denom == None or error < min_error:
            min_error = error
            min_denom = b
    return min_denom
    

x = pi_frac(1, 10**7)
print int(round(x*pi)), x