При решении многих задач возникает необходимость проведения одних и тех же вычислений на различных этапах решения задачи и при различных значениях исходных данных.
1. T1 2.
РР РР
Т2
Т1
РР Т2
Т3 Т3
Т4
РР
Т4
При составлении программы по первому алгоритму приходится задавать одну и ту же группу операторов (РР) для каждого из повторяющихся фрагментов.
Для сокращения текста программы в Паскале введено понятие подпрограммы, при этом повторяющаяся группа операторов записывается отдельно (второй алгоритм) один раз по отношению к некоторым формальным параметрам, а в соответствующих местах программы помещается лишь обращение к подпрограмме с указанием нужных в данный момент фактических параметров.
Использование подпрограмм позволяет применять принципы структурного программирования, когда исходная задача разбивается на группы простых подзадач, каждая подзадача программируется отдельно, а программа исходной задачи составляется только из обращений к программам подзадач. Кроме того, использование подзадач позволяет вводить в новую программу, программы составленные ранее.
В Паскале подпрограммы реализуются 2-х видов - процедуры и функции. И те, и другие вводятся в программу с помощью описания. Для этого существует специальный раздел программы