尝试使用红宝石数组打印出纤本纳奇数字.这段代码有什么问题


arr = [1,1]
lst = arr[arr.size-1]
nx_lst = arr[arr.size-2]
nx_num ||= nx_lst + lst
4.times { arr << nx_num }
puts arr

由于某种原因,nx_num变量不会更新。即使 arr 为 1,1,2,nx_num也保持在值 2,即使它应该是 3。请帮忙。

您在运行循环的外部和之前评估了一次nx_num。然后,在循环中的四次迭代中,您从未更新nx_num 。因此,相同的nx_num值被推了四倍。

最新更新