─ 問題 ─

n番目のフィボナッチ数を返すメソッドfibを定義しなさい。但し、メソッドの実装は一文字とする。

解答例は下。

















─ 解答例 ─

def fib(n, m=n==0||n==1 ? n : fib(n-1)+fib(n-2))
  m
end

(1..20).map { |n| fib n } # => [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]

詐欺です、スンマセンm(__)m


関連記事:

Rubyのメソッド引数は奥が深い

RubyのHashの秘密 その2



blog comments powered by Disqus
ruby_pack8

100円〜で好評発売中!
M'ELBORNE BOOKS