Compare commits
4 Commits
55df464989
...
bcf3dd0ec4
Author | SHA1 | Date |
---|---|---|
Nathan Mattes | bcf3dd0ec4 | |
Nathan Mattes | c91dc3b94e | |
Nathan Mattes | b6139625c9 | |
Nathan Mattes | d148715811 |
|
@ -0,0 +1,29 @@
|
|||
defmodule FizzBuzz do
|
||||
def count(number) do
|
||||
1..number
|
||||
|> Enum.to_list
|
||||
|> Enum.map(&FizzBuzz.check/1)
|
||||
end
|
||||
|
||||
def check(number) when number > 0 do
|
||||
cond do
|
||||
rem(number, 5) == 0 and rem(number, 3) == 0 ->
|
||||
"Fizzbuzz!"
|
||||
rem(number, 5) == 0 ->
|
||||
"Buzz!"
|
||||
rem(number, 3) == 0 ->
|
||||
"Fizz!"
|
||||
true ->
|
||||
number
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
defmodule ElixirFizzbuzz do
|
||||
def upto(n) when n > 0, do: 1..n |> Enum.map(&fizzbuzz/1)
|
||||
|
||||
def fizzbuzz(n) when rem(n, 3) == 0 and rem(n, 5) == 0, do: "Fizzbuzz!"
|
||||
def fizzbuzz(n) when rem(n, 3) == 0, do: "Fizz"
|
||||
def fizzbuzz(n) when rem(n, 5) == 0, do: "Buzz"
|
||||
def fizzbuzz(n) when n > 0, do: n
|
||||
end
|
Loading…
Reference in New Issue