Лекция: Методические указания к лабораторной работе № 6
В ТурбоПаскале имеются средства деления программы на части. На верхнем уровне это модули, на нижнем уровне деления это процедуры и функции.
Для того чтобы процедура или функция начала работать её необходимо вызвать. Процедура или функция состоит из операторов, локальных данных и внутренних процедур или функций.
Процедура или функция – это часть программы с одним входом и выходом. Основной файл программы содержит главный блок – основная программа, который с необязательным заголовком, который может обращаться к вложенным в неё блокам. Каждый из подблоков подчиняется главному или старшему блоку, в котором содержится его вызов.
Блочной называется программа, состоящая из двух блоков. Если результатом блока является одно значение, блок оформляется как функция:
Function имя функции (список формальных параметров): тип результата;
label
const описание локальных меток, констант, переменных, типов
var
procedure
function описание внутренних процедур и функций
Begin
… операторы, среди которых должен быть хотя бы один,
End. который присваивает к имени функции значение результата
Аргументы функции называют формальными параметрами, и содержатся в списке формальных параметров. Результат функции присваивается её имени.
Результаты блока могут быть так же указаны в списке параметров, в этом случае используется не функция, а процедура:
Procedure имя функции (список формальных параметров);
label
const описание локальных меток, констант, переменных, типов
var
procedure
function описание внутренних процедур и функций
Begin
… операторы, среди которых должен быть хотя бы один,
End. который присваивает к имени функции значение результата
Имя процедуры не используется для обозначения результата, а в списке формальных параметров имени результата предшествует слово Var.
Если результаты имеют разный тип, то в списке формальных параметров каждому имени результата предшествует слово Var.
Обращение к процедуре является предложение языка, оно не может быть использовано в выражениях в операторах присвоения и вывода.