| 查看: 1001 | 回复: 1 | |||
[交流]
【求助】递归循环怎么实现?【已解决】 已有1人参与
|
|
想实现输出所有由1-3为元素构成的4维行向量。 我的程序如下: A=cell(1,4); for i=1 :4 A{1,i}=0; end global B; B=cell2mat(A); global p; p=3; global k; k=0; m=0; m=f(B,p,k); function m=f(B,p,k) k=k+1; for i=1: 3 if (k<3) m=f(B,p,k); end A(1,k)=i; disp(A); end k=k-2; 运行结果: 0 0 1 0 0 1 2 0 0 1 2 3 5 ??? One or more output arguments not assigned during call to 'D:\matlab\work\f.m (f)'. Error in ==> f at 6 m=f(B,p,k); Error in ==> f at 6 m=f(B,p,k); 于是乎我很崩溃。 请问各位,该怎样修改? [ Last edited by nono2009 on 2010-7-13 at 16:19 ] |
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
知道原因了
★
nono2009(金币+1):谢谢分享经验。 2010-07-13 16:19:32
nono2009(金币+1):谢谢分享经验。 2010-07-13 16:19:32
|
少了个参数m,具体程序如下,有需要的可以看看。 A=cell(1,4); for i=1 :4 A{1,i}=0; end global B; B=cell2mat(A); global p; p=3; global k; k=0; global m; m=0; m=f(B,p,k,m,u); function m=f(B,p,k,m,u) k=k+1; for i=1: 3 B(1,k)=i; if (k<4) m=f(B,p,k,m,u); else disp(B); end if (i==3) k=k-1; end end |
2楼2010-07-13 00:56:41












回复此楼