Программирование на языке Pascal

       

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


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

Таблица 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 ленному типу данных).

on_load_lecture()

Дальше »

  Если Вы заметили ошибку - сообщите нам.  


Страницы:

« |

1

|

2

|

3

|

вопросы | »

|

учебники

|

для печати и PDA

Курсы | Учебные программы | Учебники | Новости | Форум | Помощь



Телефон: +7 (495) 253-9312, 253-9313, факс: +7 (495) 253-9310, email: info@intuit.ru

© 2003-2007, INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование



Содержание раздела