while循环条件由MATLAB中可变数量的if语句组成

时间:2014-12-08 13:22:06

标签: matlab while-loop

我正在尝试执行以下操作。假设我有一个长度为N的向量E.我想要做的是创建一个形式为

的while循环
while E(1) < A || E(2) < A || ..... || E(N) < A
do stuff
end

其中A是一些输入值,比如0.5。

但是,我希望这适用于任何N(可能高达50),所以我不能只输出每一个条件。我知道这可能在计算上很昂贵,但原则上这对我的目的来说并不重要。

问题是,我不知道该怎么做。也许我可以使用某种for循环来创建一个等于我想要的条件的字符串?我对MATLAB的这一部分不太熟悉,知道这是否可行,但我认为这是我应该考虑的方向。

1 个答案:

答案 0 :(得分:4)

您可以将测试压缩为:

while any(E<A)

基本上,它计算E小于A的所有值的掩码,如果至少有一个元素为真,则函数any返回true。