Я видел этот пример о последовательности фибоначчи, затем тестировал его в IRB. Хотел, чтобы кто-то мог сломать его для меня и показать мне, как он использует тот же метод внутри метода, который определяется.Как этот метод использует свой собственный метод в рубине?
def fib(n)
return n if (0..1).include? n
fib(n-1) + fib(n-2) if n > 1
end
Важно отметить, что в данном случае, не каждый вызов 'fib' приведет к другому вызову' fib', который является то, что удерживает его от становится бесконечным циклом. Слишком много звонков до некоторого возврата заканчивается нагромождением и созданием ошибки ** Stack Overflow **. ;) – coreyward