лабы / лекция_подпрограммы
.pdfПодпрограммы
Подпрограмма - это поименованная часть компьютерной программы, содержащая описание определённого набора действий.
Подпрограмма может быть многократно вызвана из различных частей программы В языках программирования, для оформления и использования подпрограмм,
используются различные синтаксические средства.
Назначение подпрограмм
Подпрограммы изначально появились как средство оптимизации программ по объёму занимаемой памяти. (т.е. они позволили не повторять в программе идентичные блоки, а описывать их однократно, и вызывать по мере необходимости).
К настоящему времени данная функция подпрограмм стала вспомогательной. Главное назначение - структуризация программы с целью удобства понимания и сопровождения.
Таким образом, выделение набора действий подпрограммы, и вызов её по мере необходимости, позволяет выделить целостную подзадачу, имеющую типовое решение.
Такое действие экономит память, структурирует программу, а любое изменение в
подпрограмме автоматически отражается на всех её вызовах. Преимущества разбиения программы на подпрограммы:
1.Декомпозиция программы на простые шаги.
2.Уменьшение кода.
3.Разделение крупной программной задачи между различными
программистами, или различными стадиями проекта.
4.Сокрытие деталей реализации подпрограмм от пользователей.
5.Улучшение отслеживания.
Механизм подпрограмм
В простейшем случае подпрограмма представляет собой последовательность команд, отдельную от основной части программы, и имеющую в конце специальную команду выхода.
Также, подпрограмма имеет имя, по которому её можно вызвать. Описание подпрограммы состоит из двух частей:
1.Заголовок. Содержит имя и возможные параметры.
2.Тело. Это набор операторов, которые будут каждый раз выполняться при вызове подпрограммы.
Вызов подпрограммы осуществляется с помощью имени и возможных фактических параметров.
Чтобы отличать параметры подпрограммы, описанные в заголовке, от параметров, указанных при вызове, используются такие понятия как формальные и фактические параметры.
Формальные параметры указываются при объявлении подпрограммы, фактические при её вызове. (т.е. фактические параметры становятся значениями соответствующих формальных параметров).
Способы передачи параметров в подпрограмму:
1.это передача параметров по значению.
2.по ссылке.
3.по имени.
4.стек.
Виды подпрограмм:
1.Функции - это подпрограмма специального вида, которая возвращает
единственное значение.
2.Процедуры - это независимая, поименованная часть программы, которую можно вызывать из последующих частей программы для выполнения
определённых действий.
Описание процедуры и функции
В паскале, объявление функций и процедур находится в разделе описания основной программы.
function name(param:type):type;
// раздел описаний begin
//операторы
//в конце присваивается значение, name := выражение
end;
procedure name(param:type);
// раздел описаний begin
//операторы
//в конце присваивается значение, name := выражение
end;
На Python:
def name(param):
#операторы
#если нужно возвращаемое значение для функции, пишем return переменная