Current section
Files
Jump to
Current section
Files
lib/dice.ex
defmodule Dice do
def new(dice_sides) do
for side_count <- dice_sides do
Dice.Die.new(side_count)
end
end
def roll(dice) do
for die <- dice do
Dice.Die.roll(die)
end
|> Enum.sum
end
def trials(dice, num_trials) do
for _trial <- 1..num_trials do
roll(dice)
end
|> Enum.reduce(%{}, fn result, acc ->
Map.put(acc, result, Map.get(acc, result, 0) + 1)
end)
end
end