호두나무 공방/Exercism in Elixir

Captain's Log - Exercism in Elixir

2022. 6. 9. 22:52

문제 보기

얼랭 라이브러리 사용법, 랜덤 함수 사용법을 익히는 개념 문제였다. 얼랭 함수를 쓰는 건 문제가 아닌데 문서가 아무래도 불친절해서(특히 이번 문제에서 써야 했던 io_lib.format) 예시를 찾는 데에 시간을 쓰는 일이 많다. ㅠㅠ

defmodule CaptainsLog do
  @planetary_classes ["D", "H", "J", "K", "L", "M", "N", "R", "T", "Y"]

  def random_planet_class() do
    Enum.random(@planetary_classes)
  end

  def random_ship_registry_number() do
    "NCC-#{Enum.random(1000..9999)}"
  end

  def random_stardate() do
    41000 + :rand.uniform() * 1000
  end

  def format_stardate(stardate) do
    :io_lib.format("~.1f", [stardate]) |> List.to_string()
  end
end