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

28. Процедуры и функции.

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

29.Описание процедуры.

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

Procedure <имя> (<список параметров>);

<раздел описаний>;

Begin

<оператор1>;

<опtретор2>;

:

<операторN>;

End

Где procedure – это служебное слово, <имя> - это имя процедуры определяемое в соответствии общими правилами построения идентификаторов, <cписок параметров> это список имен для обозначения исходных данных и результатов работы процедуры с указанием их типов, <раздел описаний> это раздел описания меток, констант, типов, переменных, процедур.

30.Вызов процедуры

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

<имя>(<список аргументов>);

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

31. Описание функций.

Функция это подпрограмма, результат выполнения которой есть одно скалярное значение присваимое имени этой функции. Существует два принципиальных отличия между функцией и процедурой 1. Результатом выполнения функции является одно значение, а результат выполнения процедуры являются одно или несколько значений. 2. Результат выполнения функции передается ( возвращается) в основную программу как значение имени этой функции, а результаты выполнения процедуры передаются как значение параметров. Функции отличаются от процедур своим описанием и способом использования (выводом). Описание функции помещается после раздела описания процедур. Оно состоит из заголовка и блока который содержит раздел описаний и раздел операторов. Заголовок функции имеет вид

Function <имя>(<Список параметров>):<тип>; где function это служебное слово; <имя> это имя функции; <список параметров> это список формальных параметров (исходных данных) функции с указанием их типов; <тип> - тип (скалярного) результата выполнения функций, то есть тип значения функции. Допускается описание функций без параметров

Function <имя>:<тип>;