Много способов сделать это. ismember - это первое, что приходит на ум, так как это действие, которое вы хотите предпринять. Таким образом
X = primes(20);
ismember([15 17],X)
ans =
0 1
Поскольку 15 не простое число, а 17 - это то, что ismember хорошо сработало здесь.
Конечно, найти (или любой) также будет работать. Но они не векторизованы в том смысле, в каком они были. Мы можем проверить, находится ли 15 в наборе, представленном X, но для проверки обоих этих чисел потребуется цикл или последовательные тесты.
~isempty(find(X == 15))
~isempty(find(X == 17))
или
any(X == 15)
any(X == 17)
Наконец, я хотел бы отметить, что тесты на точные значения опасны, если числа могут быть истинными числами с плавающей точкой. Тесты на целочисленные значения, как я показал, просты. Но тесты с числами с плавающей запятой обычно должны использовать допуск.
tol = 10*eps;
any(abs(X - 3.1415926535897932384) <= tol)