adding answers into cell array
2 次查看(过去 30 天)
显示 更早的评论
so i have a loop function that everytime it runs generates an output. example:
res = 'random words'
next time it runs...
res = 'another answer'
again...
res = 'another answer'
etc...so everytime it runs and generates an answer (some may be the same), I would like to record it. The end goal being that it lists all the outputs (without repeating any!) in a cell array format.
like so:
{'random words'} {'another answer'}
any sugguestions for how to go about getting these results all into an cell array? currently it just gives me an output of whatever the last result was and i want to have all the results.
0 个评论
采纳的回答
Voss
2022-4-1
One way:
answers = {};
for n = 1 : 10
% My very complex computation
res = sprintf('The answer is %i', randi(5));
answers{end+1} = res;
end
answers % showing answers with duplicates for reference
answers = unique(answers,'stable') % final result
Another way:
answers = {};
for n = 1 : 10
% My very complex computation
res = sprintf('The answer is %i', randi(5));
if ~ismember(res,answers)
answers{end+1} = res;
end
end
answers
0 个评论
更多回答(1 个)
Riccardo Scorretti
2022-4-1
Hi. You could do like this:
answers = {};
for n = 1 : 10
% My very complex computation
res = sprintf('The answer is %i', n);
answers{end+1} = res;
end
answers
另请参阅
类别
在 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!