Описание процедур
Процедуры описываются в специальном разделе описательной части программы вслед за разделом описания переменных. Любая процедура аналогично программе состоит из заголовка и тела.
Заголовок процедуры:
procedure <имя> (<список формальных параметров>)
• procedure – это служебное слово,
• <имя процедуры> определяется в соответствии с общими правилами описания идентификатора,
• <список формальных параметров> - это перечень имен для обозначения исходных данных и результатов работы процедуры с указанием их типов.
Допускается описание процедур, которые не содержат списка формальных параметров:
procedure <имя>
Содержательная часть процедуры (тело процедуры) состоит из раздела описаний и раздела операторов. В составе описательной части процедуры могут быть другие процедуры или функции. Раздел операторов начинается с begin и заканчивается end; .
Пример 1. Оформить в виде процедуры алгоритм вычисления y=a^n nэN
procedure STEP1 (n: integer; a: real; var y: real);
var i: integer;
begin y:=1; for i:=1 to n do y:=y*a; end;
В описательной части данной процедуры определена переменная i, необходимая и имеющая смысл только внутри данной процедуры. Она называется локальной переменной. Значение локальной переменной не доступно в основной программе.
Обращение к процедурам
Описание процедуры или функции само по себе никакого действия не вызывает. Чтобы выполнить процедуру или функцию, необходимо обратиться к ней. Обращение к процедуре осуществляется с помощью специального оператора вызова процедуры, который имеет вид:
<имя> (<список аргументов>)
<имя> - имя процедуры, к которой происходит обращение,
<список аргументов> - это перечень конкретных значений и имен, подставляемых на место формальных параметров процедуры при ее выполнении.
При вызове процедуры формальные параметры, указанные в заголовке, заменяются аргументами в порядке их следования. Аргументы, перечисленные в операторе-процедуре, называются фактическими параметрами. Число формальных и фактических параметров должно совпадать.