检查数组中的两个值

时间:2016-10-24 16:26:28

标签: matlab

我在Matlab中有一个名为myVec的数组,如果数组包含至少一个1和一个0,我必须执行一个操作。 我不知道如何做到这一点,我尝试find,但它没有用。 这就是我需要的。

if %myVec contains 0 && myVec contains 1
    %Code A
else
    %Code B
end

我检查过,如果您尝试示例find(myVec==0)并返回满足该语句的位置,则可以将其用作布尔值if find(myVec==0)但我尝试了if (find(myVec==0) && find(myVec==1))以及以下内容错误显示为Operands to the || and && operators must be convertible to logical scalar values.

谢谢大家。

1 个答案:

答案 0 :(得分:2)

if sum(myVec==1) && sum(myVec==0)
    %Code A
else
    %Code B
end

% sum(myVec==1) counts the number of ones in myVec 
% sum(myVec==0) counts the number of zeros in myVec
% if myVec is a matrix with more than one rows and columns, use myVec(:) instead