March 2014 update
This commit is contained in:
parent
09687c4926
commit
a25938f123
1846 changed files with 21876 additions and 5203 deletions
18
Task/Pi/Haskell/pi-2.hs
Normal file
18
Task/Pi/Haskell/pi-2.hs
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
#!/usr/bin/runhaskell
|
||||
|
||||
import Control.Monad
|
||||
import System.IO
|
||||
|
||||
pi_ = g(1,0,1,1,3,3) where
|
||||
g (q,r,t,k,n,l) =
|
||||
if 4*q+r-t < n*t
|
||||
then n : g (10*q, 10*(r-n*t), t, k, div (10*(3*q+r)) t - 10*n, l)
|
||||
else g (q*k, (2*q+r)*l, t*l, k+1, div (q*(7*k+2)+r*l) (t*l), l+2)
|
||||
|
||||
digs = insertPoint digs'
|
||||
where insertPoint (x:xs) = x:'.':xs
|
||||
digs' = map (head . show) pi_
|
||||
|
||||
main = do
|
||||
hSetBuffering stdout $ BlockBuffering $ Just 80
|
||||
forM_ digs putChar
|
||||
Loading…
Add table
Add a link
Reference in a new issue