Compute pi to base 12 using Python?

Dick Moores rdm at rcblue.com
Wed Apr 13 20:30:54 EDT 2005


Bengt Richter wrote at 14:52 4/13/2005:
>import sys
>
>def main():
>     k, a, b, a1, b1 = 2L, 4L, 1L, 12L, 4L
>     while 1:
>         p, q, k = k*k, 2L*k+1L, k+1L
>         a, b, a1, b1 = a1, b1, p*a+q*a1, p*b+q*b1
>         d, d1 = a/b, a1/b1
>         while d == d1:
>             output(d)
>             a, a1 = 10L*(a%b), 10L*(a1%b1)
>             d, d1 = a/b, a1/b1
>
>def output(d):
>     sys.stdout.write(`int(d)`)
>     sys.stdout.flush()
>
>main()
>
># Reading/writing Python source often gives me the impression of
># reading/writing a poem!
># Layout, indentation, rythm, I like the look and feel!
>
># What does this tiny program do? It is not a sonnet, even not a
># pi-sonnet, but it surely produces Pi!

It sure does. When I ran it my jaw dropped. I had 7,947 CORRECT digits in 
2 minutes 0 seconds (by my stopwatch)!

Now on to base 12.

Thanks!

Dick Moores
rdm at rcblue.com





More information about the Python-list mailing list