При решении инженерных задач весьма часто возникает необходимость повторять одни и те же вычисления в разных частях программы при различных значениях параметров. Чтобы исключить повторение одинаковых записей и сделать тем самым программу проще и понятнее, удобно, в отличие от циклов, оформить такие повторяющиеся действия в виде самостоятельной части программы как подпрограмму.
Подпрограммой называют автономную часть программы, вычисления по которой повторяются при разных исходных данных, которая выделена в самостоятельный законченный модуль и позволяет обращение к себе из различных частей общей программы. Подпрограммы оформляют в виде самостоятельных программ, имеющих имя и чётко обозначенные вход и выход.
Самостоятельный характер подпрограмм позволяет разрабатывать их разным программистам и использовать в одной общей программе. Это ускоряет разработку всей программы. Кроме того, имена переменных в основной программе и подпрограммах сделаны независимыми друг от друга, что позволяет использовать одну и ту же подпрограмму в разных программах.
Другим достоинством применения подпрограмм является то, что имеет место экономия памяти ЭВМ, так как память для хранения переменных, используемых в подпрограммах, выделяется только на время работы подпрограммы и освобождается сразу же по окончании работы подпрограммы.
Использование подпрограмм позволяет реализовать структурное программирование, являющееся в настоящее время одним из самых прогрессивных методов программирования.
В Паскале существуют два вида подпрограмм: подпрограммы–функции и подпрограммы–процедуры, которые называют просто функциями и процедурами соответственно. Любая программа может содержать несколько процедур и функций. Для указания вида подпрограммы используют зарезервированные слова functionи procedure.