Matlab - 用于循环生成斐波那契数的比例的矢量
问题描述:
我想在Matlab中编写一个for循环,它将打印n = 3的连续斐波纳契数F(n + 1)/ F(n) ...,20.我希望这可以说明黄金比例的收敛性。Matlab - 用于循环生成斐波那契数的比例的矢量
我有这样的代码(新Matlab的):
f(1) = 0
f(2) = 1
ratio = zeros(1,20); %Initialize row vector that will contain the ratio's
for n = 3:20
f(n) = f(n-1) + f(n-2);
ratio(n) = ratio(f(n+1)/f(n)); % Update row vector after every iteration
end
ratio
我虽然得到一个错误,具有矩阵尺寸做。任何帮助表示赞赏!
答
没有必要来计算循环比率:
n = 20;
f = zeros(n,1);
f(1) = 0;
f(2) = 1;
for k = 3:n
f(k) = f(k-1) + f(k-2);
end
ratio = f(3:end)./f(2:end-1);
肯定'F(N + 1)'?另外,为什么你在右边标出“比例”? – TroyHaskin
我想你的意思是'比率(n)= f(n)/ f(n-1);' – ThP
啊,我应该让它跑到19呢?我也是索引比率,因为我想每个迭代都要用斐波那契数的比率覆盖向量比中的每个零(每个分量)。 – Kamil