这是我的示例代码,用于解决当满足三个条件中的任何一个时如何使while
循环结束。
我希望代码在n = 100
时结束,但结束于n = 301
。如何才能在n=100
结束时将其结束?
clear all; close all;
n = 0;
R = 0; A = 0; T = 0;
while (R~=1) || (A~=1) || (T~=1)
if n == 100
R = 1;
end
if n == 200
A = 1;
end
if n == 300
T = 1;
end
n=n+1;
end
答案 0 :(得分:5)
||
表示或(with short circuiting)。这意味着在所有条件都为假之前,您的循环不会退出。
您想使用AND,即&&
。这意味着当至少有一个条件为假时,循环退出。
另外(来自下面的评论):
当循环结束时,n的值将为101(因为循环底部的n=n+1
)。如果重要的是n的值为100,那么您可以在break
正文中插入if
(info here),以便在n = 100时循环退出。