Основные логические выражения отношения: больше, меньше, больше или равно, меньше или равно, равно-неравно.

Выражение - это формула для вычисления величины. Она содержит последовательность операндов и операторов. Операнды могут содержать вызовы функций, переменные, константы, или другие выражения. Операторы определяют действия, которые необходимо произвести над операндами.

В Фортране существует 4-ре класса выражений : 1.Арифметические.
2.Символьные.
3.Отношения.
4. Логические.

Выражения отношения

Выражения отношения сравнивают величины двух арифметических или двух символьных выражений. Арифметическое выражение нельзя сравнивать с символьным, пока не определена мета команда $NOTSTRICT. В этом случае арифметические выражения сравнимы с символьными. Результатом выражения отношения является тип LOGICAL. Для сравнения величин в выражениях отношения можно использовать любой оператор, указанный в таблице 1.

----------------------------T----------------------------| Оператор | Операция |+---------------------------+----------------------------+| .LT. | Меньше чем || .LE. | Меньше или равно || .EQ. | Равно || .NE. | Не равно || .GT. | Больше чем || .GE. | Больше или равно |L---------------------------+----------------------------- Таблица 1.Операторы отношения.

Все операторы отношения бинарные и появляются между двумя операндами. Среди операторов отношения нет относительного старшинства или сочетательности и поэтому выражение следующего вида нарушает правила типов для операндов :

A .LT. B .NE. C

Выражения отношения могут появляться только в логических выражениях.

Выражения отношения с арифметическими операндами могут иметь один операнд типа INTEGER и один операнд типа REAL. В этом случае перед вычислением выражения отношения целый операнд будет преобразован в тип REAL.

Выражения отношения символьных операндов сравнивают положение этих операндов в упорядоченной последовательности ASCII. Операнд является меньше чем другой, если он появляется раньше в упорядоченной последовательности. Если сравниваются операнды разной длины,то более короткий рассматривается как дополненный справа пробелами до такой же

Логические выражения

Результатом логического выражения является величина типа LOGICAL. Простейшие формы логических выражений следующие :

1. Логические константы.
2. Ссылки на логические переменные.
3. Ссылки на элементы логических массивов.
4. Ссылки на логические функции.
5. Выражения отношения.

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

------------T-----------------------------T--------------| Оператор | Операция | Приоритет|+-----------+-----------------------------+--------------+| .NOT. | Отрицание | Наивысший || .AND. | Конъюнкция | Средний || .OR. | Включающая дизъюнкция | Средний || .EQV. | Эквивалентность | Низший || .NEQV. | Неэквивалентность | Низший |L-----------+-----------------------------+--------------- Таблица 2. Логические операторы.

Операторы .AND., .OR., .EQV., .NEQV. не являются бинарными и появляются между двумя операндами логических выражений. Оператор .NOT. - унарный и предшествует своему операнду.

Операции равного приоритета выполняются слева направо, поэтому, например,

A .AND. B .AND. C

Эквивалентно :

(A .AND. B) .AND. C

Пример правила приоритета :

.NOT. A .OR. B .AND. C

выполняется как :

(.NOT. A) .OR. (B .AND. C)

Два .NOT. не могут соседствовать с друг другом, хотя

A .AND. .NOT. B

- это пример допустимого выражения с двумя операторами подряд.

Другой пример правила приоритетов и использования .EQV. и .NEQV. :

.NOT. A . EQV. B .OR. C .NEQV. D .AND. E

может быть выполнено как

((.NOT. A) .EQV. (B .OR. C)) .NEQV. (D .AND. E)

Логические операторы имеют тоже самое значение, что и в стандартной математической семантике с неразделительным .OR.. Например:

.TRVE. .OR. .TRVE.

даст величину

.TRVE.

Приоритеты операторов

Когда в одном выражении встречаются арифметические, логические операторы и операторы отношения, они выполняются со следующими приоритетами:

1.Логические(низший).
2.Отношения(средний).
3. Арифметические (высший).

Список используемой литературы

1. http://www.fortran-online.info

2. http://progopedia.ru/language/fortran/

3. http://www.parallel.ru/tech/tech_dev/standards.html

4. http://studall.org/all-77979.html

5. http://www.vedu.ru/programming

Наши рекомендации