logo
Лекции по информационным технологиям / Лекции_2_семестр

Подпрограммы пользователя

Хотя набор стандартных процедур и функций достаточно широк, он вряд ли может удовлетворить потребности каждого пользователя. Поэтому ему предоставлена возможность самому реализовывать нужные ему алгоритмы в виде подпрограмм и обращаться к ним по имени из любого места программы. Таким образом, если в программе возникает необходимость частого обращения к некоторой группе операторов, то рационально сгруппировать такую группу в самостоятельный блок, к которому можно обращаться в программе. Такие программные блоки, созданные самим пользователем принять называть подпрограммами пользователя. Каждой пользовательской подпрограмме дается уникальное имя. Передача данных в подпрограмму и возврат результата выполнения осуществляется с помощью входных и выходных параметров.Входной параметр – это переменная, значение которой должно быть установлено до начала работы данной подпрограммы, авыходной параметр – это переменная, которая получает свой значение в результате работы подпрограммы.

Имя подпрограммы и ее параметры записываются в заголовке подпрограммы. Различают формальные параметры– параметры, определенные в заголовке подпрограммы, ифактические параметры– выражения, задающие конкретные значения при обращении к подпрограмме.

Различают два типа пользовательских подпрограмм: процедуры (Procedure)и функции (Function). Главное отличие функции от процедуры заключается в том, что результат работы функции – единственное значение, а результат работы процедуры – одно значение, несколько значений или ни одного. Например, можно написать процедуру, которая:

Кроме того, обращение к функции является разновидностью операнда, обращение к функции является разновидностью операнда, т.е. функция как бы включается в состав выражения (арифметического, логического, строкового и др.). При этом говорят, что функция возвращаетсвое значение. Вызов же процедуры – это разновидность оператора. После обращения к процедуре ставится точка с запятой, так же как и после любого другого оператора.

Прежде, чем писать какую либо подпрограмму необходимо четко представить, что она будет делать, что будет у нее на входе, а что на выходе. При этом о процедуре или функции говорят как о черном ящике, который известно, что делает, но неизвестно как устроен.

Процедуры и функции определяются в разделе описания функций и процедур.