Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка DELPHI.DOC
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.73 Mб
Скачать

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

Выражения вычисляются в определенном порядке в соответствии с приоритетами (табл. 9) выполняемых операций.

Таблица 9

Приоритеты операций при вычислении выражений

Приоритет

Операции

1

( ) – круглые скобки

2

Вычисление функций

3

@, not, унарные +, -

4

*, /, div, mod, and, shl, shr, as

5

+, -, or, xor

6

=, <>, >, <, <=, >=, is, in

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

Виды операторов

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

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

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

  • составной оператор;

  • операторы условного перехода;

  • операторы цикла;

  • оператор над записями;

  • операторы обработки исключительных ситуаций.

Иногда объявления программных элементов называют операторами объявления, которые, в отличие от “настоящих” операторов, являются неисполнимыми.

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

Таких операторов четыре:

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

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

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

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

Оператор присваивания является средством изменения содержимого памяти. Синтаксически с помощью этого оператора переменной или функции присваивается значение какого-либо выражения. Записывается этот оператор следующим образом: Y := <выражение>;, где Y - переменная, := - знак присваивания. Например, Х:= 5; Y:= sin(X); C := 'A';.

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

Обращение к процедуре позволяет выполнить вычисления, задаваемые подпрограммой вида “процедура”. Как и функция, процедура имеет имя и может иметь список аргументов. При вызове вычислений из процедуры записывается имя нужной процедуры, а затем справа от имени в круглых скобках записывается список параметров-аргументов. Например, ProcName(X, Y);. Существует большое количество встроенных стандартных процедур, например Dec(X) и Inc(X) (табл. 1). Программист может составлять собственные процедуры.

Оператор безусловного перехода записывается в следуюшем виде: GOTO <метка>;. Этот оператор позволяет изменить последовательный порядок выполнения операторов и перейти к выполнению программы, начиная с заданного оператора. Оператор, на который происходит переход, должен быть помечен меткой. Метки бывают двух видов: или какое-либо число 1..9999 или обычный идентификатор: А, В25, Point. Все метки должны быть описаны в объявлении Label: 56, A, B25, Point;. Одной меткой можно пометить только один оператор: Point: Y := 2*X;. Использование оператора GOTO считается плохим стилем программирования.

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