matlab如何用while来实现递归

用一个while循环来实现fibonacci numbers
sum1=1;
sum2=2;
n=input('Enter first value:');
while n>=3
sum(n)=sum(n-1)+sum(n-2)
end

这段哪里出问题了,运行后停止不下来
该如何改正呢~~??

sum(1)=1;%儿丢了括号。
sum(2)=2;
n=input('Enter first value:');
while n>=3
sum(n)=sum(n-1)+sum(n-2)
end
并且后面的sum需要调用这个函数,不会每次都输入first n value的呀。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-10
sum(1)=1; %缺少括号
sum(2)=2;
n=input('Enter first value:');
while n>=3
sum(n)=sum(n-1)+sum(n-2);
n=n-1; %循环里面没有可退出的标志
end
而且你这个程序本身有问题,如果n=4的话,刚进入循环的话,执行的是
sum(4)=sum(3)+sum(2),但sum(3)未知,所以还是有问题
相似回答
大家正在搜