RosettaCodeData/Task/Anonymous-recursion/Ruby/anonymous-recursion-5.rb

6 lines
144 B
Ruby
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
def fib(n)
raise RangeError, "fib of negative" if n < 0
Hash.new { |fib2, m|
fib2[m] = (m < 2 ? m : fib2[m - 1] + fib2[m - 2]) }[n]
end