Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

ПРОЦЕДУРЫ, ФУНКЦИИ И МОДУЛИ В ПАСКАЛЕ





 

При программировании «сверху вниз» алгоритм записывается в виде последовательности шагов. В каждый момент времени человек может рассматривать небольшое число деталей, поэтому на верхнем уровне алгоритма число шагов обычно небольшое. При написании программы не следует скрывать такую структуру. В большинстве случаев полезно иметь в виду следующую рекомендацию: из чтения текста программы должно быть ясно, что делает программа, а не как она это делает. Лица, которых интересует ответ на второй вопрос, должны найти его в другом месте, просматривая другие объекты, но не основной блок программы.

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

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

Процедуры и функции — это законченные программные единицы, которые решают некоторую подзадачу и, возможно, выполняются многократно.

Модули являются основой модульного программирования в Турбо-Паскале. Они используются для создания библиотек, которые могут включаться в различные программы (при этом совсем необязательно иметь в наличии исходный текст), а большие программы могут разделяться на логически связанные модули.

Достоинства модульного программирования:

1) упрощение процесса написания и отладки;

2) сокращение объема программ.

Недостаток — некоторое увеличение затрат времени и памяти на оформление модулей и обращение к ним.

 

Процедуры

 

Процедура — это независимый программный блок (программная единица), выполняющий решение некоторой самостоятельной подзадачи.

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

Program

Const

Var

.....

Процедура_1

.....

Процедура_n

Begin { Начало основной программы }

......

End.

Сама процедура оформляется следующим образом:

 

Procedure Имя(Формальные_параметры); {заголовок процедуры}

Описание локальных переменных

Begin

Операторы < = Тело процедуры

End;

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

 

Формальные параметры – это список, который содержит имена переменных, массивов и типов, являющихся исходными данными и результатами процедуры. Он может отсутствовать. Элементы списка параметров описываются полностью, с указанием типов.

Локальные переменные — это переменные, которые используются только внутри данной процедуры.

На вход процедуры (в качестве исходных данных) поступает совокупность параметров – аргументов, а на выходе формируются параметры – результаты. Причем процедура позволяет получить один или несколько результатов, а функция — только один.

 

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

 

Procedure GorLine(n: Integer; Sim: char);

{Изображение горизонтальной линии символом Sim}

Var

I: Integer;

Begin

For i: = 1 To n Do

Write(Sim);

End;

 

Здесь n и Sim – формальные параметры, являющиеся входными величинами;

i – локальная переменная.

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

Например:

Имя; { если процедура не имеет параметров } или

Имя (Фактические_параметры); {если процедура с параметрами}

Обращения к процедуре GorLine возможны в следующих формах:







Дата добавления: 2014-12-06; просмотров: 682. Нарушение авторских прав; Мы поможем в написании вашей работы!




Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


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


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

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

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

Studopedia.info - Студопедия - 2014-2025 год . (0.012 сек.) русская версия | украинская версия