xor

Логический XOR для символьных выражений

Синтаксис

Описание

пример

xor(A,B) представляет логическую разделительную дизъюнкцию. xor(A,B) верно когда любой A или B верно. Если оба A и B TRUE или FALSE, xor(A,B) является ложным.

Примеры

Установите и оцените условие

Объедините два символьных неравенства в логическое выражение с помощью xor.

syms x
range = xor(x > -10, x < 10);

Замените переменную x с 11 и 0. Если вы заменяете x с 11, затем неравенство x > -10 допустимо и x < 10 недопустимо. Если вы заменяете x с 0, оба неравенства допустимы. Обратите внимание на то, что subs только заменяет числовыми значениями в неравенства. Это не оценивает неравенства к логическому 1 или 0.

x1 = subs(range,x,11)
x2 = subs(range,x,0)
x1 =
-10 < 11 xor 11 < 10
 
x2 =
-10 < 0 xor 0 < 10

Оценивать эти неравенства к логическому 1 или 0, используйте isAlways. Если только одно неравенство допустимо, выражение с xor оценивает к логическому 1. Если оба неравенства допустимы, выражение с xor оценивает к логическому 0.

isAlways(x1)
isAlways(x2)
ans =
  logical
     1

ans =
  logical
     0

Обратите внимание на то, что simplify не упрощает эти логические выражения до логического 1 или 0. Вместо этого упростите, возвращает символьные константы symtrue или symfalse.

s1 = simplify(x1)
s2 = simplify(x2)
s1 =
symtrue
 
s2 =
symfalse

Преобразуйте символьный symtrue или symfalse к логическим значениям с помощью logical.

logical(s1)
logical(s2)
ans =
  logical
     1

ans =
  logical
     0

Входные параметры

свернуть все

Операнды в виде символьных уравнений, неравенств, выражений или массивов. Входные параметры A и B должен или быть одного размера или иметь размеры, которые совместимы (например, A M- N матрица и B скаляр или 1- N вектор-строка). Для получения дополнительной информации смотрите Совместимые Размеры Массивов для Основных Операций (MATLAB).

Советы

  • Если вы вызываете simplify для логического выражения, содержащего символьные подвыражения, можно получить символьные константы symtrue и symfalse. Эти две константы не являются тем же самым как логическим 1 TRUE) и логический 0 ложь). Преобразовывать символьный symtrue и symfalse к логическим значениям используйте logical.

  • assume и assumeAlso не принимайте предположения, которые содержат xor.

Вопросы совместимости

развернуть все

Поведение изменяется в R2016b

Смотрите также

| | | | |

Представленный в R2012a