Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
16
Task/Random-numbers/Elixir/random-numbers-1.elixir
Normal file
16
Task/Random-numbers/Elixir/random-numbers-1.elixir
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
defmodule Random do
|
||||
def normal(mean, sd) do
|
||||
{a, b} = {:rand.uniform, :rand.uniform}
|
||||
mean + sd * (:math.sqrt(-2 * :math.log(a)) * :math.cos(2 * :math.pi * b))
|
||||
end
|
||||
end
|
||||
|
||||
std_dev = fn (list) ->
|
||||
mean = Enum.sum(list) / length(list)
|
||||
sd = Enum.reduce(list, 0, fn x,acc -> acc + (x-mean)*(x-mean) end) / length(list)
|
||||
|> :math.sqrt
|
||||
IO.puts "Mean: #{mean},\tStdDev: #{sd}"
|
||||
end
|
||||
|
||||
xs = for _ <- 1..1000, do: Random.normal(1.0, 0.5)
|
||||
std_dev.(xs)
|
||||
2
Task/Random-numbers/Elixir/random-numbers-2.elixir
Normal file
2
Task/Random-numbers/Elixir/random-numbers-2.elixir
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
xs = for _ <- 1..1000, do: 1.0 + :rand.normal * 0.5
|
||||
std_dev.(xs)
|
||||
Loading…
Add table
Add a link
Reference in a new issue