Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы на устные вопросы.doc
Скачиваний:
3
Добавлен:
22.09.2019
Размер:
860.16 Кб
Скачать

Вопрос 20. Глобальные и локальные, фактические и формальные параметры.

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

Целесообразно использовать подпрограмму тогда, когда в процессе решения задачи многократно встречается некоторая подзадача.

С термином «подпрограмма» тесно связано еще одно понятие: оператор вызова подпрограмм — оператор, обеспечивающий исполнение подпрограмм. Он помещается в той точке рабочей программы, где необходимо выполнить подпрограмму.

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

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

Локальные данные — это константы, типы и переменные, существующие только внутри процедур и функций, и объявленные либо в списке параметров (только переменные), либо в разделах const, type, var этих процедур и функций. Такие данные недоступны для операторов основной программы.

Формальные и фактические параметры. Формальные параметры подпрограммы указывают, с какими параметрами следует обращаться к этой подпрограмме (количество параметров, их последовательность, типы). Они задаются в заголовке подпрограммы в виде списка формальных параметров, разбитого на группы, разделенные ";''• В группу формальных параметров включаются однотипные параметры одной категории. Все формальные параметры можно разбить на четыре категории:

- параметры - значения (значения этих параметров в основной программе подпрограммой не меняются);

- параметры - переменные (значения этих параметров подпрограмма может изменять в основной программе);

- параметры - константы (используются только в версии 7.0);

- параметры - процедуры и параметры - функции.

Для каждого формального параметра следует указать имя. тип. а в случае параметра - пе­ременной или параметра константы - его категорию (слово -идентификатор).

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

Параметры - переменные.

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