Статус документа
Статус документа

ГОСТ 23056-78 Язык программирования. ФОРТРАН (с Изменением N 1)

6. ВЫРАЖЕНИЯ

Настоящий раздел определяет форму представления и правила вычисления арифметических и логических выражений, а также отношений. Отношение употребляется только как компонента логических выражений. Выражение формируется из операндов и знаков операций (см. п.10.3 об ограничениях на использование операндов в выражениях).

6.1. Арифметические выражения. Арифметическое выражение формируется из знаков арифметических операций и арифметических операндов. Как выражение, так и входящие в него операнды идентифицируют значения типа целый, вещественный, двойной точности или комплексный. Знаки арифметических операций:

Знак операции

Представляемая операция

+

Сложение

-

Вычитание

*

Умножение

/

Деление

**

Возведение в степень


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

Арифметические операнды - это первичное арифметическое выражение, множитель, терм, терм со знаком, простое арифметическое выражение и арифметическое выражение.

Первичное арифметическое выражение - это либо арифметическое выражение, взятое в скобки, либо константа, либо ссылка на переменную, либо ссылка на элемент массива, либо ссылка на функцию.

Множитель - это либо первичное арифметическое выражение, либо конструкция вида:

первичное арифметическое выражение ** первичное арифметическое выражение

Терм - это либо множитель, либо конструкция одного из видов

терм/множитель

или

терм * множитель

Терм со знаком - это терм, которому непосредственно предшествует знак + или -.

Простое арифметическое выражение - это либо терм, либо два простых арифметических выражения, разделенные знаком + или -.

Арифметическое выражение - это либо простое арифметическое выражение, либо терм со знаком, либо одна из этих двух конструкций, за которой непосредственно следует знак + или -, за которым непосредственно следует простое арифметическое выражение.

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

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

6.2. Отношения. Отношение состоит из двух арифметических выражений, разделенных знаком операции отношения, и принимает значение "истина" или "ложь" в зависимости от выполнения или невыполнения этого отношения. Одно из арифметических выражений может быть типа вещественный или двойной точности, тогда другое должно быть также типа вещественный или двойной точности (допустимы все четыре сочетания), либо оба арифметических выражения должны быть типа целый. Если в отношении одно из выражений имеет тип вещественный, а другое - тип двойной точности, то результат будет такой же, как и для отношения, в котором правым арифметическим выражением является нуль двойной точности, левым - разность двух исходных арифметических выражений (в исходном порядке), а знак операции отношения тот же самый. Знаки операций отношения:

Знак операции

Представляемая операция


Меньше


Меньше или равно


Равно


Не равно


Больше

Больше или равно

6.3. Логические выражения. Логическое выражение формируется из знаков логических операций и логических операндов и принимает значения "истина" или "ложь". Знаки логических операций:

Знак операции

Представляемая операция


Логическое сложение


Логическое умножение

Логическое отрицание


Логические операнды - это первичное логическое выражение, логический множитель, логический терм и логическое выражение.

Первичное логическое выражение - это либо логическое выражение, взятое в скобки, либо отношение, либо логическая константа, либо ссылка на логическую переменную, либо ссылка на элемент логического массива, либо ссылка на логическую функцию.