LoginSignup
2

More than 5 years have passed since last update.

Elixirで進捗どうですか?

Last updated at Posted at 2015-07-16

ダメです。
Elixirで遊び始めたので、やってみました。
せっかくなのでメソッドにガードつけてーとか考えてたんですけど、正規表現使えなくて諦めました。

「進捗・どう・です・か」をランダムに表示し「進捗どうですか」が完成したら煽ってくるプログラム
「進捗・どう・です・か」をHaskellで書いてみた
「進捗・どう・です・か」をランダムに表示し「進捗どうですか」が完成したら煽ってくるClojure
golang の進捗どうですか

shinchoku.ex
:random.seed :os.timestamp

defmodule Shinchoku do

  @chars ["進捗", "どう", "です", "か"]
  @goal Enum.join(@chars)
  @length length(@chars)

  def doudesuka(s \\ "") do
    st = s <> Enum.at(@chars, :random.uniform(@length) - 1)
    if String.ends_with?(st, @goal), do: st <> "???", else: doudesuka(st)
  end

end

s = Shinchoku.doudesuka
IO.puts s
IO.puts Integer.to_string(String.length(s)) <> "文字で煽られました。"

かどうどうかですかかかか進捗進捗どう進捗か進捗どう進捗かどうか進捗かです進捗どう進捗かですどうどうかどうですかですですですか進捗かどうかどうです進捗どう進捗進捗です進捗進捗ですです進捗かですかかですです進捗進捗です進捗ですか進捗かかか進捗かどうですどうどうどうですかどうですですどうかですどうかか進捗どうどうですですかですどうどうどう進捗か進捗かどうかどうですどうどうかですどうですですどうどうですですかですです進捗かか進捗進捗進捗進捗どうどうどう進捗ですどうどうかかかどうどうですです進捗進捗ですどう進捗ですどう進捗進捗ですですかか進捗ですですですかかか進捗どうどう進捗かですかかかか進捗かかどう進捗どうですか???
309文字で煽られました。

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