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

Лабораторная работа № Реализация программ, использующих процедуры и функции пользователя

  1. Цель работы

В процессе выполнения лабораторной работы студент должен приобрести навыки по подготовке, редактированию, компиляции и выполнению Pascal-программ, использующих процедуры Procedureи функции Function пользователя:

- разработать алгоритм поставленной задачи (блок-схема);

- составить и отредактировать программу на языке Pascal;

- выполнить программу и обработать полученные результаты.

2. Краткие сведения из теории

2.1 Глобальные, локальные блоки и объекты

Как известно, синтаксически Pascal программа состоит из необязательного заголовка и блока. Блоки могут быть: глобальные и локальные.

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

2.2 Понятие процедур и функций

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

- сократить объем и улучшить структуру программы;

- уменьшить вероятность ошибок и облегчить процесс отладки программы;

- дает возможность выполнить разработку программы разным программистам.

2.3 Описание процедур и функций

На языке Pascal процедуры и функции записываются зарезервированными словами Procedure и Function соответственно. Описание процедур и функций осуществляется в разделе описаний данных

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

Procedure <идентификатор процедуры>[<(список формальных параметров с объявлением типа)>];

[<раздел описаний>] {локальные данные}

begin {начало локального блока}

<раздел операторов>

end; {конец локального блока}

Допускается описание процедур без параметров

Описание функции

Function <идентификатор функции>[<(список формальных параметров с объявлением типа)>]: <тип функции-результата>;

[<раздел описаний>] {локальные данные}

begin {начало локального блока}

<раздел операторов>

end; {конец локального блока}

В разделе операторов должен находиться оператор присваивания:

<идентификатор функции> : = <значение-ответ>;

2.4 Вызов процедур и функций

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

<идентификатор процедуры>[<(список фактических параметров)>];

Вызов функции осуществляется по имени функции аналогично обращению, например к математической функции “sin x”:

x:= 0.5;

a:=sin (x);

или

а:=sin (0.5);

Вызов “sin x” осуществляется оператором присваивания.

Между фактическими и формальными параметрами должно быть соответствие: по типу, количеству, порядку следования.

В качестве фактических параметров могут выступать константы, выражения, переменные, структурированные данные. Константы и выражения не могут быть формальными параметрами.