我试图为fibonacci编写一个简单的自定义函数,但是我得到了一个错误:
我的代码:
class Fibonacci
def fib(num)
@num = num.to_i
series = Array.new
series[0] = 0
series[1] = 1
for i in 0..series[@num]
series[@num+2] = series[@num] + series[@num+1]
end
return series
end
end
obj = Fibonacci.new
obj.fib(8)错误:
ruby fibonacci.rb
fibonacci.rb:9:in `fib': bad value for range (ArgumentError)
from fibonacci.rb:19:in `<main>'发布于 2017-03-21 03:39:19
您将从0..series[@num]获得series[@num],此时series[@num]将是nil。
我想你的意思是:
for i in 0..@num
series[i+2] = series[i] + series[i+1]
endhttps://stackoverflow.com/questions/42917952
复制相似问题