Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
САПР ТП - Конспект лекций.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.54 Mб
Скачать

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

Результатом действия логических, или булевых, операторов являются только числа 0 (если логическое выражение, записанное с их помощью, истинно) или 1 (если логическое выражение ложно). Чтобы вычислить значение логического выражения, например 1=1 (рис. 3.9):

  • Вставьте с панели Boolean (Булевы операторы) соответствующий оператор =.

  • В появившиеся местозаполнители вставьте операнды (две единицы).

  • Нажмите клавишу <=>, чтобы получить ответ.

Рис. 3.9. Вставка логического оператора

Получается абсурдное на первый взгляд выражение 1=1=1. Однако на самом деле все правильно. Справа от оператора вывода записано логическое выражение 1=1 (обратите внимание, что логический знак равенства выглядит по-другому, нежели обычный), которое является истинным. Поэтому значение данного выражения равно 1, что и показано справа от знака равенства.

Перечислим логические операторы:

  • больше (Greater Than);

  • меньше (Less Than);

  • больше или равно (Greater Than or Equal);

  • меньше или равно (Less Than or Equal);

  • равно (Equal);

  • не равно (Not Equal to);

  • и (And);

  • или (Or);

  • исключающее или (Exclusive or);

  • отрицание (Not).

Операнды в логических выражениях могут быть любыми числами. Однако если оператор по смыслу применим только к 0 и 1, то любое неравное нулю число по умолчанию принимается равным 1. Но в результате все равно может получиться либо 0, либо 1. Например, ¬ (-0.33)=0.

Примеры действия логических операторов приведены в листингах 3.25 и 3.26.

Листинг 3.25. Операторы сравнения.

Листинг 3.26. Булевы операторы.

Логические операторы чрезвычайно важны при записи подлежащих решению алгебраических уравнений и неравенств в приемлемой для Mathcad форме.

3.2.4. Матричные операторы

Матричные операторы предназначены для совершения различных действий над векторами и матрицами.

3.2.5. Операторы выражения

Почти все вычислительные операторы были рассмотрены выше (см. разд. 3.1). Они сгруппированы на панели Evaluation (Выражения).

  • Оценить численно (Evaluate Numerically) (см. разд. 3.1.5)

  • Вычислить символьно (Evaluate Symbolically) (см. разд. 3.1.6)

  • Присваивание (Definition) (см. разд. 3.1.2)

  • Глобальное присваивание (Global Definition)

Рассмотрим различие между операторами обычного присваивания и глобального присваивания (процесс его вставки в документ показан на рис. 3.10). Для того чтобы вычислить выражение, содержащее некоторую переменную или функцию, необходимо, чтобы этой переменной ранее в документе было присвоено какое-либо значение. Иначе будет выдаваться сообщение об ошибке (рис. 3.11). Однако если в любой части документа (например в самом низу) вставить оператор глобального присваивания, то переменная будет определена в любой части документа (листинг 3.27).

Листинг 3.27. Действие операторов присваивания и глобального присваивания

Рис. 3.10. Кнопка глобального присваивания на панели Evaluation

Рис. 3.11. Обычное присваивание сказывается только на нижеследующей части документа

Как видно из листинга 3.27, обычное, или локальное, присваивание переменной х действует от момента х:=10 до момента глобального присваивания х = 5. Вообще говоря, Mathcad анализирует документы на предмет присваивания переменных в два прохода: сначала распознаются все операторы глобального присваивания, и все выражения в документе сверху вниз и слева направо вычисляются в соответствии с ними, а при втором проходе в том же порядке анализируются операторы локального присваивания, и все выражения вычисляются с поправкой на них. Приведем важный пример взаимодействия глобального и локального присваивания (листинг 3.28).

Листинг 3.28. Взаимодействие глобального и локального присваивания

Обратите внимание, что, несмотря на локальное присваивание переменной x:=10 в третьей строке листинга, значение переменной у вычисляется все-таки в соответствии с глобальным значением х = 5, поскольку сама переменная y глобальным образом определена через переменную х.

Аккуратнее относитесь к определению глобальных переменных и, во избежание путаницы, старайтесь не переопределять их локально. Применяйте глобальное присваивание только для определения констант и, по возможности, избегайте случаев, когда оператор вывода предшествует оператору глобального присваивания для улучшения читаемости документов.

Точно так же как Вы глобально присваиваете значение переменной, допускается глобально определять функции (листинг 3.29).

Листинг 3.29. Глобальное определение функции пользователя

Оператор глобального присваивания можно отображать не только в виде тождественного равенства, но и как обычный знак равенства. Для этого вызовите на операторе контекстное меню и в подменю пункта View Definition As выберите пункт Equal (Равенство).