Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BorlandPascal.doc
Скачиваний:
54
Добавлен:
17.03.2015
Размер:
2.83 Mб
Скачать

Операторы процедуры

Оператор процедуры определяет активизацию процедуры, обозна-

ченную с помощью идентификатора процедуры. Если соответствующее

описание процедуры содержит список формальных параметров, то опе-

ратор процедуры должен содержать в себе соответствующий ему спи-

сок фактических параметров (параметры, список которых приводится

в определении, являются формальными параметрами, а в операторе

вызова процедуры они являются фактическими параметрами). При вы-

зове происходит передача фактических параметров формальным пара-

метрам.

--------------¬

оператор --T->¦идентификатор+-TT-------------------------->

процедуры ¦ ¦ процедуры ¦ ¦¦ -------------------¬ ^

¦ L-------------- ¦L->¦список фактических+--

¦ --------------¬ ¦ ¦ параметров ¦

+->¦ десигнатор +-+ L-------------------

¦ ¦ метода ¦ ¦

¦ L-------------- ¦

¦ --------------¬ ¦

+->¦ уточненный +-+

¦ ¦ десигнатор ¦ ¦

¦ ¦ метода ¦ ¦

¦ L-------------- ¦

¦ --------------¬ ¦

L->¦ ссылка на +--

¦ переменную ¦

L--------------

Приведем некоторые примеры операторов процедур:

PrintHeaing;

Transpose(A,N,M);

Fin(Name,Address);

Операторы перехода

Оператор перехода goto вызывает передачу управления операто-

ру, которому предшествует метка, указанная в данном операторе пе-

рехода. Синтаксическая схема оператора перехода имеет следующий

вид:

-----¬ ------¬

оператор перехода --->¦goto+--->¦метка+--->

L----- L------

При использовании оператора перехода должны соблюдаться сле-

дующие правила:

1. Метка, которая указывается в операторе перехода, должна

находиться в том же блоке или модуле, что и сам оператор

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

процедуры или функции или внутрь нее.

2. Переход извне внутрь структурного оператора (то есть пе-

реход на более глубокий уровень вложенности) может выз-

вать непредсказуемые эффекты, хотя компилятор не выдает

сообщения об ошибке. Например, вы не должны переходить в

тело цикла for.

Примечание: Хорошая практика программирования требует

минимального использования переходов.

Структурные операторы

Структурные операторы строятся из других операторов, порядок

выполнения которых должен быть последовательным (составные опера-

торы и операторы над записями), определяемым условной передачей

управления (условные операторы) или повторяющимся (операторы цик-

ла).

------------------------¬

структурный ----T---->¦ составной оператор +------->

оператор ¦ L------------------------ ^

¦ ------------------------¬ ¦

+---->¦ условный оператор +---+

¦ L------------------------ ¦

¦ ------------------------¬ ¦

+---->¦ оператор цикла +---+

¦ L------------------------ ¦

¦ ------------------------¬ ¦

L---->¦ оператор над записями +----

L------------------------

Соседние файлы в предмете Программирование на Pascal