how to make return value in for loop ?
23 次查看(过去 30 天)
显示 更早的评论
i have a code :
function rad = Radial(n,m);
radial=0; %zeros(size(r));
for s=0:(n-abs(m))/2
c=(-1)^s*((factorial(n-s))/(factorial(s)*factorial(((n+abs(m))/2)-s)
*factorial(((n-abs(m))/2)-s)))
radial=radial+c*(radial^(n-2*s));
end
return radial;
but, i can return the value of radial, and then compute the radial value to loop again. How to fix ? thanks
0 个评论
采纳的回答
Stephen23
2016-3-11
编辑:Stephen23
2016-3-11
MATLAB does not need a return statement to return a value. To return a value you simply need to list it as an output argument of the function:
function [output1,output2,...] = fun_name(input1,input2,...)
You have specified an output argument rad, but then have totally ignored this inside your code an never allocated any value to it. You should try something like this:
function rad = Radial(n,m);
rad = ... whatever rad is;
end
Of course this is explained quite clearly in the introductory tutorials:
Read the documentation. It tells you how MATLAB works.
If you want to store all of the values of rad in a loop then you can use indexing.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!