I tried the answer provided here by Image analyst ,https://www.mathworks.com/matlabcentral/answers/47182-problem-in-recursive-function, it worked well, but I want to keep storing all the outputs in 1 cell structure, is it possible
Storing Outputs of a two output function recursion
4 views (last 30 days)
Show older comments
Is there a method where I can apply a function with two outputs, and iterate the function recursively for these two outputs. In other words, I want this function to be applied on both outputs of this function until satisfying a condition(in a while loop),
UPDATE:I tried the recursion provided here by Image analyst ,https://www.mathworks.com/matlabcentral/answers/47182-problem-in-recursive-function, it worked well, but I want to keep storing all the outputs in 1 cell structure, is it possible?
Accepted Answer
Fangjun Jiang
on 25 Mar 2020
Yes. There is no limitation on the number of outputs for recursive function.
4 Comments
Fangjun Jiang
on 25 Mar 2020
Then it is not really an issue related to recursion. It is just storing data. The only thing to take care of is to declare a big enough arry or cell because the number of iteration is not determined. You can remove the un-used array space at the end.
x=100;y=200;
k=0;
result=ones(100,2);
while x>1e-3 && y>1e-4
k=k+1
[x,y]=D23(x,y);
result(k,:)=[x,y];
end
result(k+1:end,:)=[]
function [x,y]=D23(x,y)
x=x/2;
y=y/3;
end
More Answers (0)
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!