Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билеты по Информатике 1 курс 13 группа.docx
Скачиваний:
5
Добавлен:
15.04.2019
Размер:
134.65 Кб
Скачать

Билет 25. Правила записи программного модуля.

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

{<Абстрактное действие >}

<Заголовок>

<Блок> // <Блок> ::=<Раздел описаний>

<Составной оператор>

При проектировании используется 2 типа модуля: главный модуль и процедурный модуль (процедура). Структура главного модуля (с главного модуля начинается выполнение программы):

{Цель программы}

Program <имя> (<имена файлов>); //Перечислены имена файлов с входными и выходными данными программы.

Раздел описаний //Должен содержать определение типов входных, выходных данных задачи.

begin

Главный алгоритм

end.

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

Аппарат процедур в языках программирования состоит из двух частей: описание процедуры и вызов процедуры.

Описание процедуры (процедура) - это фрагмент программы, оформленный по определенным правилам и имеющий имя, по которому его можно вызвать.

Структура процедурного модуля (описание процедуры) (Выполняется процедура только при выполнении оператора процедуры, вызове ее из другого модуля):

{Цель, описание входных, выходных данных}

Procedure <имя> (<описание параметров>); //Содержит описания типов входных выходных данных процедуры.

Раздел описаний //Содержит описания внутренних данных процедуры.

begin

Алгоритм

end.

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

<Описание входных формальных параметров>:=<список описаний переменных>

<Описание выходных формальных параметров>:=var<список описаний переменных>

В языке Паскаль существует два вида процедур: процедуры общего вида и функции. Результатом вычисления процедуры общего вида могут быть несколько переменных, как скалярного, так и структурного типа. Функция может вычислять только одно значение скалярного типа. Формальные параметры функции могут быть только аргументами (входными данными функции).

{Цель, описание входных, выходных данных}

Function <имя> (<описание параметров>): <тип>;

Раздел описаний

begin

Алгоритм (должен содержать оператор, который присваивает результат имени функции).

end.

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

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

Дпя того чтобы установилась такая связь формального и фактического процедурного параметра, необходимо перед описанием функции вставить директиву компилятора {$F+}. Параметры, предаваемые процедуре при вызове, называются фактическими параметрами.

Вызов процедуры включает следующие шаги:

- среди описаний процедур ищется процедура с именем <имя процедуры>;

- вместо формальных параметров подставляются (передаются) соответствуют фактические параметры;

- выполняется модифицированное тело процедуры;

- управление возвращается из процедуры к оператору, следующему за оператором процедуры.