Warning: include(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include_once(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82

Warning: include_once(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82
Логические операторы | Учебники

Главная > Mathematica 8 > Логические операторы


Логические операторы

Логические операторы
Логическими принято называть операции, отражающие чисто логическое соответствие между данными. В обиходном языке эти связи выражаются утверждениями типа «да» или «нет». Например, на вопрос «Сын вырос выше отца?» мы можем ответить «да» или «нет». В математике (да и в информатике) принято характеризовать логическое соответствие утверждениями True («Верно», «Истина» или «Да») и False («Неверно», «Ложь» или «Пет»). Слова True и False являются символьными константами, отражающими результаты логических операций и в системе Mathematica.
Для осуществления логических операций используются следующие логические операторы:
Равенство (например, а == b)
! = Неравенство
> Больше (например, b > а)
>= Больше или равно
< Меньше
<= Меньше или равно
Возможны следующие формы применения операторов сравнения:
а == b == с
а != b != с
х < у < z
и т. д.
Результатом вычисления этих выражений является выдача логических значений True или False. Это демонстрируют следующие примеры.

Ввод (In)

Вывод (Out)

2=2

True

a=a

True

a=b

a == b

2=3

False

2<3

True

2>3

False

2!=3

True

2+1==3==4-1

True

 
Логические функции
Основные логические функции над логическими данными р, q и т. д. задаются следующим образом:
Not[p] или !р Логическое отрицание
And[p, q,…] или р && q &&… Логическое умножение — операция «И»
Or[p,q,…] или р || q | |… Логическое сложение — операция «ИЛИ»
Приведем примеры применения логических операторов и функций.

Ввод (In)

Вывод(Out)

And [True , True , True ]

True

True && True && False

False

Not [True]

False

Not [False]

True

Or [True, True, False]

False

2==2 && 3==3

True

True && True

True

And[l,l,0]

11111 1 0

And[l,l,0]

1 && 1&& 0

Эти примеры показывают, что аргументами логических функций и операндами логических операций должны быть только логические константы True и False или выражения, значения которых представлены ими. Недопустимо использовать численные значения 1 и 0, отождествляя их с логической единицей и логическим нулем. Результатом задания операций с ними будет повтор задания — возможно, в укороченной форме.
Отметим еще ряд логических операторов и функций:
Equal[Ihs, rhs] Greater[х,у] или х > у Возвращает True, если Ihs и rhs тождественны
Greater[xl,x2,x3] или xl > х2 > хЗ Возвращает True, если х оказывается больше у, иначе возвращает False
GreaterEqual[х,у] или х >= у Возвращает True, если xi образуют строго убывающую последовательность, иначе возвращает False
GreaterEqual[xl,х2,хЗ] или xl>= х2 >= хЗ Возвращает True, если х больше или равно у, иначе возвращает False
Negative[х] NonNegative[х] Positive[х] Возвращает True, если xi образуют невозрастающую последовательность, иначе возвращает False
SameQtlhs,rhs] или Ihs === rhs Возвращает True, если х оказывается отрицательным числом, иначе возвращает False
Xor[el, e2,…] Возвращает True, если х — неотрицательное число, иначе возвращает False
Возвращает True, если х — положительное число, иначе возвращает False
Возвращает значение True, если выражение Ihs тождественно rhs, иначе False. В отличие от Equal, сравнивает форму представления операндов, а не их значения
Является логической функцией XOR (исключающее «ИЛИ»). Возвращает True, если нечетное количество из ei имеют значение True, а остальные False. Возвращает False, если четное количество ei имеют значение True, a остальные False
Ниже приводятся примеры использования этих функций.

Ввод (In)

Вывод (Out)

Positive [2-3]

False

Equal [1+2, 4-1]

True

Equal [1+2, 2]

False

Greater [5, 4]

True

Greater [5, 4,3]

True

Greater [5, 4, 9]

False

Less [3,2+3]

True

Positive [2]

True

Negative [-2]

True

Neganbve[2]

False

NonNeganive [ -2 ]

False

NonNegative[2]

True

Xor[ True, True]

False

Xor [False , False]

False

Xor [True, False]

True

Ряд дополнительных логических функций читатель найдет в приложении.
Функции комплексного аргумента
Элементарные функции в системе Mathematica могут иметь аргумент в виде действительного числа х или комплексного z. Аргументы указываются как параметры функций в квадратных скобках.
Прежде всего отметим функции для работы с комплексными числами z:

  • Abs[z] — возвращает модуль комплексного числа z;
  • Arg [ z ] — возвращает аргумент комплексного числа z;
  • Conjugate [z] — возвращает комплексно-сопряженное с z число;
  • Directedlnf inity [] — представляет бесконечную числовую величину с неопределенным направлением на комплексной плоскости;
  • Directedlnfinity[z] — представляет бесконечную числовую величину, направление которой на комплексной плоскости определяется фазой комплексного аргумента z;
  • Im [ z ] — возвращает мнимую часть комплексного числа z;
  • Re [ z ] — возвращает вещественную часть числа z.

Далее приведены примеры операций с комплексными числами в непосредственном режиме. 

Ввод (In)

Вывод (Out)

z1 : =2+1*3;

z2: =4+1*5;

N[zl+z2]

6. + 8.1 I

Re [2+1*3]

2

H[Im[z2]J

5.

N[zl/z2]

0.560976 + 0.0487805 I

N[Abs[zl*z2]]

23.0868

Con j ugate [ z 1 ]

2-31

Если ввести N [ z 1 / 0 ], то система выдаст следующее сообщение:
N[zl/0]
Power::infy : Infinite expression 1/0 encountered.
Complexlnfinity
Итак, в этом случае система выдает сообщение об ошибке, но после него возвращает константу Complexlnfinity, означающую комплексную бесконечность.
Элементарные функции
Элементарные функции, надо полагать, хорошо известны читателю, взявшемуся за изучение Mathematica. Полный набор этих функций с их синтаксисом дан в приложении. Отметим, что в Mathematica имена элементарных функций записываются с большой буквы, а их аргументы задаются в квадратных скобках. Следующие примеры иллюстрируют сказанное.

Ввод (In)

Вывод (Out)

Sqrt[2]

Sqrt[2]

Sqrt[2.]

1.41421

2*Sin[l]

2 Sin[l]

N[2*Sin[l]]

1.68294

Log[Exp[l]]

1

Simplif у [Sin [x] /Cos [x] ]

Tan[x]

ComplexExpand [ Sin [ a+b* I ] ]

Cos[b] Sin[a]+ I Cosfa] Sinh[b)

Из этих примеров видно, что система знает и использует основные соотношения между элементарными функциями. В двух последних примерах используются символьные преобразования с применением функций Simplify (упрощение выражений) и ComplexExpand (расширение выражений с комплексным аргументом). Более подробно эти важные для символьных операций функции будут рассмотрены в дальнейшем.

Нетрудно заметить, что Mathematica вычисляет все эти функции как с действительным, так и комплексным аргументом. Аргументом может быть список — тогда функция возвращает список вычисленных значений. Набор элементарных функций функционально полный, то есть отсутствующие в нем функции всегда можно вычислить через имеющиеся.

Статьи по теме

Комментарии запрещены.