在 Matlab 中,我在 for 循环期间执行计算,但如果满足某些条件,我试图找到一种在 for 循环期间跳过迭代的方法。我写了一个简单的例子来说明我的问题。
在下面的代码中,for 循环将通过迭代 1 和 2 并按预期输出到 r。r(1) 将是 1,r(2) 将是 2。一旦 for 循环运行通过迭代 3,20 的值将被放入 r(3)。在这发生之后,我希望 for 循环跳过接下来的 5 次迭代并直接进入 for 循环的第 8 次迭代。
for i=1:1:10
if i==3
r(i)=20;
i = i+5;
else
r(i) = i;
end
end
r 的实际结果如下:
r =
1 2 20 4 5 6 7 8 9 10
但是,我希望结果类似于以下内容。(请注意,我不希望用 0 填充所需的 r(4):r(7),而是希望完全跳过循环迭代 4 到 7。)
r =
1 2 20 0 0 0 0 8 9 10
如果有人有建议,将不胜感激。谢谢!