ПРОЦЕДУРЫ ПОЛЬЗОВАТЕЛЯ
Процедура пользователя представляет собой именованную группу операторов, реализующую определенную часть обшей задачи и вызываемую при необходимости для выполнения по имени из любой позиции раздела операторов. Описание процедуры включает заголовок и тело процедуры. Заголовок состоит из зарезервированного слова Procedure, идентификатора (имени) процедуры и необязательного заключенного в круглые скобки списка формальных параметров с указанием типа каждого параметра. Формат: Procedure <имя> <(формальные параметры)>; Пример. Procedure Sort (A: integer; В: real); Procedure Kvadr (Alpha, Beta: integer; Gamma; boolean); Procedure SumVed; {алгоритм, реализованный процедурой, не требует формальных параметров} Имя процедуры - идентификатор, уникальный в пределах программы. Тело процедуры представляет собой локальный блок, по структуре аналогичный программе: Procedure <имя> <(формальные параметры)>; <разделы описаний> begin <раздел операторов> end; Для обращения к процедуре используется оператор вызова процедуры. Он состоит из идентификатора (имени) процедуры и списка фактических параметров, отделенных друг от друга запятыми и заключенных в круглые скобки. Список параметров может отсутствовать, если процедуре не передается никаких значений. Формат. <идентификатор процедуры> <(параметр,..параметр)>; Пример. Sort (А1,В1); {параметры - значения переменных} Kvadr (14,25, True); {параметры - непосредственно значения} Sunf/ed; {фактические параметры не указаны, так как в вызываемой процедуре нет формальных параметров} Параметры обеспечивают механизм замены, который позволяет выполнять процедуру с различными начальными данными. Между фактическими параметрами в операторе вызова процедуры и формальными параметрами в заголовке описания процедуры устанавливается взаимно-однозначное соответствие в результате их перебора слева направо. Количество и тип формальных параметров равны количеству и типу фактических параметров. Ниже приведена программа, реализующая с помощью процедуры очищение экрана, установку курсора в его центр и вывод слова 'СПРАВОЧНИК'. Program DenoProcedure; Procedure Ekran; begin ClrScr; GoToXY(30,12); Write(‘ СПРАВОЧНИК’) end; Begin Ekran; {вызов процедуры Ekran} End. Если процедура возвращает в программу какие-то значения, соответствующие переменные должны быть описаны как параметры-переменные с использованием слова Var.
|