A-M baby
This commit is contained in:
parent
764da6cbbb
commit
db842d013d
19005 changed files with 197040 additions and 7 deletions
11
Task/Monte-Carlo-methods/Haskell/monte-carlo-methods.hs
Normal file
11
Task/Monte-Carlo-methods/Haskell/monte-carlo-methods.hs
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
import System.Random
|
||||
import Control.Monad
|
||||
|
||||
get_pi throws = do results <- replicateM throws one_trial
|
||||
return (4 * fromIntegral (foldl' (+) 0 results) / fromIntegral throws)
|
||||
where
|
||||
one_trial = do rand_x <- randomRIO (-1, 1)
|
||||
rand_y <- randomRIO (-1, 1)
|
||||
let dist :: Double
|
||||
dist = sqrt (rand_x*rand_x + rand_y*rand_y)
|
||||
return (if dist < 1 then 1 else 0)
|
||||
Loading…
Add table
Add a link
Reference in a new issue