Порядок вычислений

 

Если в выражении расставлены скобки, то вычисления производятся в порядке, известном всем еще с начальной школы: чем меньше глубина вложенности скобок, тем позже вычисляется заключенная в них операция. Если же скобок нет, то сначала вычисляются значения операций с более высоким приоритетом, затем - с менее высоким. Несколько подряд идущих операций одного приоритета вычисляются в последовательности "слева направо".

Таблица 2.1. Приоритеты (для всех) операций языка Pascal Операции Приоритет

Унарные2) операции +, -, not, @, ^, # Первый(высший)

Операции, эквивалентные умножению *, /, div, mod, and, shl, shr Второй

Операции, эквивалентные сложению +,-, or, xor Третий

Операции сравнения =, <>, >, <, <=, >=, in Четвертый

 

 

Замечание: Вызов любой функции имеет более высокий приоритет, чем все внешние относительно этого вызова операции. Выражения, являющиеся аргументами вызываемой функции, вычисляются в момент вызова (см. лекцию 8).

 

Примеры выражений (с указанием последовательности вычислений) для целых чисел:

a + b * c / d (результат принадлежит к вещест-

3 1 2 венному типу данных);

 

a * not b or c * d = 0 (результат принадлежит к логиче-

2 1 4 3 5 скому типу данных);

 

-min(a + b, 0) * (a + 1) (результат принадлежит к целочис-

3 2 1 5 4 ленному типу данных).

 








Дата добавления: 2015-01-13; просмотров: 512;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.