Подпрограмма в Паскаль является отдельной независимой частью программы, которая обладает той же структурой, что и основная программа. Таким образом, подпрограмма имеет заголовок, разделы описания переменных, констант, процедур, функций и т.д.
Использование подпрограмм обусловлено несколькими причинами, среди которых:
Основными подпрограммами в Паскаль являются процедуры и функции.
Разделяют стандартные подпрограммы и пользовательские. Стандартные подпрограммы включены в язык Pascal (например, процедура clrscr, которая очищает экран, или функция cos, которая возвращает в качестве своего значения косинус числа). Пользовательские подпрограммы пишутся программистом как отдельная мини-программа, которая присоединяется к основной программе.
Для объединения программы и подпрограммы используется 2 метода:
Первый способ применяется, в том случае, если программа не очень большая, а подпрограмма не будет использоваться в других программах. Если же вы планируете использовать подпрограмму в других программах необходимо использовать 2-й способ.
Как уже было сказано, подпрограмма обладает той же структурой что и основная программа. Здесь следует лишь запомнить, что подпрограмма имеет заголовок, который должен отличаться от заголовка основной программы. Кроме того, подпрограмма заканчивается не точкой, а точкой с запятой.
Подпрограмма начинает работать после вызова ее из основной программы. Вызов происходит путем указания в программе заголовка подпрограммы. При этом действие основной программы приостанавливается, и начинает работать подпрограмма. После выполнения всех операторов подпрограммы управление передается основной программе.
Любая подпрограмма должна быть описана до того как она будет использована в программе. Переменные, которые используются подпрограммой, бывают 2-х видов:
Для локальных переменных выделяется память в специальной области, которая называется стеком. После выполнения подпрограммы память освобождается, и результаты ее выполнения исчезают.
Как уже было сказано существует 2 вида подпрограмм, процедуры и функции. Основное отличие их друг от друга в том, что процедура выполняет какие-либо действия и не возвращает результатов этих действий. Функция, после выполнения каких-либо действий, возвращает результат. Например, процедура CLRSCR очищает экран, а функция ABS (-2) подсчитывает модуль числа -2 и возвращает в качестве значения число 2.
Оглавление : Уроки Паскаль. Процедуры и функции.
Следующая статья : Процедуры в Паскаль.
Комментарии
были бы еще примеры