LoginSignup
2
2

More than 5 years have passed since last update.

Elixir でFizzBuzz

Posted at

Elixir さわってみた記念にFizzBuzzを書いてみました。

fizzbuzz.exs
defmodule Fizzbuzz do
  def process(limit) do
    process(1, limit)
  end

  def process(n, limit) when n > limit do
    IO.puts "done."
  end

  def process(n, limit) do
    case n do
      n when rem(n, 15) == 0 ->
        IO.puts "fizzbuzz"
      n when rem(n, 5) == 0 ->
        IO.puts "buzz"
      n when rem(n, 3) == 0 ->
        IO.puts "fizz"
      n ->
        IO.puts n
    end

    process(n + 1, limit)
  end
end

System.argv |> List.first |> String.to_integer |> Fizzbuzz.process

FizzBuzz in Elixir

パターンマッチをちゃんと勉強しようと思います。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2