Выражения в языке Паскаль.


 

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

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

- оператор присваивания: Левая часть := Выражение

для вычисления присваиваемого значения

 


- оператор (процедура) вывода: Write(..., Выражение, …);

вычисление того, что надо выводить на экран

- вызов функции: Имя_переменной := Имя_функции(…, Выражение, …);

вычисление значения фактического параметра функции

Выражение - конструкция, предназначенная для вычисления нового значения. Элементы выражения (операнды или лексемы – переменные, константы, знаки операций и вызовы функций) соединяются знаками операций (арифметических, логических, отношений). Операции в выражении определяют его семантику (смысл или значение). Например, в выражении (высказывании) «Казнить нельзя помиловать» положение запятой определяет смысл (значение) этого высказывания.

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

В арифметических выражениях используются в качестве операндов числа или символьные значения переменных и результатом является целое или вещественное число:

x + 4 - Sin(x);

где x - переменная, 4 - константа, Sin -вызов функции.

Логические выражения строятся с помощью логических переменных (констант) и логических операций, которые возвращают логические значения (операции отношения). Знаки операций логические или операции отношений. Результата - логический.

ПРИМЕР логического выражения: (a>b) or false and (c>d).

В символьных выражениях операндами служат строки. Единственная разрешенная операция – конкатенация строк.

Кроме значения и типа результата для вычисления значения выражения важно задать порядок выполнения элементарных операций в выражении. Для выражений действуют три правила для определения порядка действий:

1). Правило скобок.

В первую очередь выполняется действие в скобках, а если их несколько, то в самых внутренних скобках.

2). Правило учета приоритета операций.

В первую очередь выполняются операции с наиболее высоким приоритетом.

3). Правило следования.

При одинаковых приоритетах операции обычно выполняются слева направо.

Приоритет операций на Паскале следующий (ко 2-му правилу):

 

приоритет операция тип значения
not not арифметический логический
and shl, shr *, / div, mod, and арифметический арифметический арифметический арифметический логический
+, -, or, xor or, xor арифметический логический
=, <>, >, < логический

 

 

Всего 4 группы приоритетов.

В пределах каждой из 4х групп приоритет одинаков

Примечание 1. Чем меньше значение приоритета, тем он выше.

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

a > b or c < d

Примечание 3. Чтобы указать правильный порядок вычислений в выражении надо расставить скобки.

Существуют две схемы вычисления логических выражений: полная и неполная. Полная схема означает, что выражения вычисляются полностью слева направо. По короткой схеме вычисление логических выражений прерывается, как только станет известным итоговый результат выражений (истина или ложь).

ПРИМЕР.

(1>2) and ((c>d) or (a<b)). - false.

При вычислении значения этого выражения по короткой схеме с самого начала ясно, какой результат имеет значение выражения (False).

Для выбора схем используется директива:

{$B+} -по полной схеме

{$B-} - по короткой схеме(по умолчанию).

 



Дата добавления: 2016-05-28; просмотров: 5857;


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

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.