У меня здесь проблема с моей хвостовой рекурсией Фибоначчи в Ruby.
Когда я запускаю свой код, я всегда получаю эту ошибку. Где я сделал не так?
1) Error:
test_fibo_rek(Test_fibo_rek):
ArgumentError: wrong number of arguments (1 for 3)
/Test_Fibonacci.rb:14:in `test_fibo_rek'
1 tests, 0 assertions, 0 failures, 1 errors, 0 skips
def fibo(n)
check_pre(
nat?(n))
fibo_rek(n,0,1)
end
def fibo_rek(n,fibo1,fibo2)
if n == 0
return fibo1
else
fibo_rek(n-1,fibo2,fibo1 + fibo2)
end
end
class Test_fibo_rek < Test::Unit::TestCase
def test_fibo_rek
assert_equal(0,fibo_rek(0))
assert_equal(13,fibo_rek(7))
assert_raise(RuntimeError) {fibo_rek('10')}
assert_raise(RuntimeError) {fibo_rek(-5)}
end
end