作为MATLAB课程的练习,我必须在MATLAB中使用for循环计算前100个Fibonacci numbers。这是我的代码:
for N=[0:1]
N=N
end
for N=[2:1:100]
N= N-1+N-2
end
但结果是错误的:输出为0,1,1,3,...
而不是0,1,1,2,3,...
- 即2
缺失。
我的代码中的错误在哪里?
答案 0 :(得分:2)
您正在重写N
,而不是构建数字N
的向量。不要将虚拟循环变量与你迭代的变量混合在一起。
N=[0 1];
for x=3:100
N(x)=N(x-2)+N(x-1);
end