Monte Carlo
(?) :: (Ord a,Num a) => (a,a) -> Bool (?) (x,y) = 1 > x^2 + y^2 pi' :: Fractional a => a pi' = 4.0*fromIntegral (length $ filter (?) dots) / fromIntegral (length dots) dots :: (Enum a,Fractional a) => [(a,a)] dots = [(x,y) | x <- [0.01,0.02..1.0] , y <- [0.01,0.02..1.0]]
Monte Carlo法で円周率を計算。
ただ、桁落ちが甚だしくて3.1としか出ない.....
ghciによる定義では、
pi = 3.141592653589793