我在MATLAB工作,我对它还很陌生。
我试图导入一个函数,并在for循环中运行它10,000次。该函数产生3个独立的输出,我需要保存10,000次试验中的每一次输出,这样我就可以从每一次试验中得出平均值。然而,我的代码只是为每一次试验产生一个输出。
`for trials = 1:10000
[S,M,L] = crayonBreak(); % function to run
Sl = [S; trials]; % list for all S values
Ml = [M; trials]; % list for all M values
Ll = [L; trials]; % list for all L values
end`
`
这是我现在使用的for循环,我不认为我在列表中记录的值是正确的,但是我不知道我做错了什么。
1条答案
按热度按时间gwbalxhn1#
首先,让我们创建一个虚拟函数,以便正确测试
原始代码在每次循环时覆盖
Sl
值,因此最终值是crayonBreal
的最后结果加上数字10000。这个代码的最小的调整是在每次循环中将最近的结果和之前的结果连接起来。看起来像这样。
一个更好的实现是首先预分配输出,然后在执行时插入结果。