我正在尝试使用for loop
迭代代码中的每10个步骤。
代码写在下面;
for i=10:10:30
for j=20:10:40
k=i+j
end
end
所以,第一次迭代将是10:20
,然后是20:30
,最后是30:40
。但是当我使用它时,我的代码中一直出现错误。但是,如果我只输入10:20
或20:30
,它可以正常使用。
答案 0 :(得分:1)
由于循环的顺序,有一个像你所写的嵌套for循环不会产生你期望的结果。如果我们在分配i
时查看j
和k
的值,我们会看到以下值。
i j
10 20
10 30
10 40
20 20
20 30
20 40
30 20
30 30
30 40
如果您希望k
等于10:20
,然后20:30
,最后30:40
,那么您需要做类似这样的事情< / p>
starts = 10:10:30;
ends = 20:10:40;
% Only use a single for loop
for k = 1:numel(starts)
k = starts(k):ends(k);
% Do stuff with this k
end