フィボナッチ法から値を取得して配列に連結しようとしています。ただし、ループからすべての値を配列に割り当てるのではなく、最後の値のみを返します。これを回避する方法はありますか?ありがとうございました。
def fib_up_to(max)
i1, i2 = 1, 1
while i1 <= max
yield i1
i1, i2 = i2, i1+i2
end
end
def capture_arr(val)
$a = []
$a << val
end
fib_up_to(1000) do |f|
capture_arr(f)
end
p $a # => [987]