y = find(sA);
l = y + sA;
for i=1:10
for j=1
l = l + sA;
end
y = y + length(y);
end
我想知道如何将l
每次迭代生成的值存储在数组中。
当我尝试做类似 l(l) = l + sA; 我得到了“奇怪”的结果。
注意:请阅读我在下面发表的评论。谢谢!
试试这样:
y = find(sA); %This is incredibly strange! What exactly are you trying to achieve with this line?
l = y + sA;
for i=1:10
l = l + sA;
StoredL(i, :) = l;
y = y + length(y); %This line does nothing??? Why is it here?
end
我删除了你的内部循环,因为它什么都不做,因为 j = 1 只会运行一次,那有什么意义呢?
对于一个复杂的循环,通常我会这样做:
results = zeros(expectedLength,1);
ixNextResult = 1;
for ixForLoop1 = 1:10
for ixForLoop2 = 20:30
..
results(ixNextResult) = calculationResult;
ixnextResult = ixNextResult + 1;
end
end
我很难理解你的代码试图完成什么,所以我不确定要改变什么。例如,该片段l(l) = l+sA
对我来说没有多大意义。