RosettaCodeData/Task/Random-numbers/Elixir/random-numbers.elixir

13 lines
306 B
Plaintext

defmodule Random do
def init() do
:random.seed(:erlang.now())
end
def normal(mean, sd) do
{a, b} = {:random.uniform(), :random.uniform()}
mean + sd * (:math.sqrt(-2 * :math.log(a)) * :math.cos(2 * :math.pi * b))
end
end
Random.init()
xs = for _ <- 1..1000, do: Random.normal(1.0, 0.5)