如何使用matlab中的if和or语句比较数字?

Pip*_*ppi 0 comparison matlab logic

如果数组的元素b=[1,2,3,4,5]等于1或2或5,我想返回true .我该怎么做?

Jon*_*nas 6

有不同的方法可以做到这一点:

  • 针对一个数字测试单个元素

    b(1) == 5

  • 针对多个数字测试单个元素,即第一个元素是1还是2还是5?

    b(1) == 1 || b(1) == 2 || b(1) == 5

    %# which is equivalent to

    any(b(1) == [1 2 5];

  • 针对一个数字测试所有(或许多)元素

    b == 1; %# a vector with t/f for each element

  • 针对多个数字测试所有元素

    b == 1 | b == 2 | b == 5 %# note that I can't use the shortcut ||

    %# this is equivalent to

    ismember(b,[1 2 5])