counter = [2 3 3 4 5];
while counter(1:5)~=zeros(1,5)
counter(1)=0;
end
counter
我知道这是一个愚蠢的代码,但我不明白这个while循环是如何被破坏的。我希望循环存在,直到所有计数器变为0,即)counter = [0 0 0 0 0],而不仅仅是其中一个。
有人可以告诉为什么这个循环会被破坏并写入具有我初衷的循环吗?
答案 0 :(得分:0)
这一行
counter(1) = 0;
是一个问题。您只需更改counter
的一个元素。你需要在你的循环中添加一些能够将counter
的任何/所有元素设置为零的代码,或者你最终会得到一个无限循环。
此外,您需要将counter(1:5)~=zeros(1,5)
更改为any(counter(1:5)~=zeros(1,5))
,因为TroyHaskin已经评论过,因此它会一直运行,直到counter
的所有元素都为零。