Простые операторы


Лекция 17. Операторы языка Turbo Pascal

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

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

 

Таблица 16.5. Приоритеты действий при вычислении выражений

Группа Тип действий Операции или элементы
Вычисления в круглых скобках ( )
Вычисления значений функций Функции
Унарные операции @, not, унарный +, унарный -
Операции типа умножения *, /, div, mod, and, shl, shr
Операции типа сложения +, -, or, xor
Операции отношения =, <>, <, >, <=, >=, in

 

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

 

Вопросы:

1. Простые операторы

2. Структурированные операторы

 

Литература:

1. [6], с. 24-31.

2. [7], с. 99-118.

 

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

Все операторы языка Паскаль можно разделить на две группы: простые и структурированные.

Простыми являются те операторы, которые не содержат в себе других операторов. К ним относятся:

оператор присваивания;

обращение к процедуре;

оператор безусловного перехода GOTO;

пустой оператор.

Оператор присваивания (“:=”)

Назначение. С помощью этого оператора переменной присваивается значение выражения.

Формат записи:

<переменная> : = <выражение>).

<Переменная> и <выражение> должны иметь одинаковый тип (кроме "вещественному типу можно присвоить целочисленный");

Не следует путать оператор присваивания (“:=”)с операцией сравнения (“=”);

Пример: А := 5*х-6.

Оператор безусловного перехода (“Goto”)

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

Формат записи:

Goto <метка> .

Перед использованием метка должна быть объявлена в разделе описания меток;

Допускается переход к <метке> внутри одного блока.

Пример: If x<>0 then y:=a/x else goto 1;