Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб9_апробация.doc
Скачиваний:
2
Добавлен:
20.11.2019
Размер:
95.23 Кб
Скачать

Министерство образования и науки Российской Федерации

Саратовский государственный технический университет

Балаковский институт техники, технологии и управления

Программирование с использованием подпрограмм пользователя

Методические указания к выполнению лабораторных работ

по курсу “Программирование и основы алгоритмизации”

для студентов специальности 210100

дневной и вечерней форм обучения

Одобрено

редакционно-издательским советом

Балаковского института техники,

технологии и управления

Балаково 2009

Цель работы: овладение навыками алгоритмизации и програм­ми­рования задач с использованием подпрограмм пользователя.

Основные понятия

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

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

Главное отличие процедур от функций заключается в том, что результатом последних является одно единственное значение.

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

Процедуры пользователя

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

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

Формат:

procedure <имя> (список формальных параметров);

Const ...;

Type ...;

Var...;

begin

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

end;

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

Например:

{Процедура fact вычисляет значения факториала числа m}

{и возвращает результат в переменной f.}

{Для хранения значений факториалов (f) использован тип longint.}

procedure fact(m: integer; var f: longint);

var

i: integer;

begin

f:=1;

for i:=2 to m do f:=f * i;

end;

Формальные параметры нельзя описывать в разделе описаний процедуры.

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

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

Например:

fact(n, fn);

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