Студопедия — Билет №25. Правила записи программного модуля
Студопедия Главная Случайная страница Обратная связь

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

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






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

МОДУЛИ

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

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

<Заголовок>

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

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

 

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

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

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

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

begin

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

end.

 

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

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

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

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

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

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

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

begin

Алгоритм

end.

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

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

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

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

 

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

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

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

begin

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

end.

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

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

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

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

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

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

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

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

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

*********************Вариант 2**************************************************************

МОДУЛИ

Стандартный Паскаль не предусматривает механизмов раздельной компиляции программы с последующей их сборкой перед выполнением. Разработчики Турбо Паскаля включили в язык механизм так называемых модулей.

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

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

СТРУКТУРА МОДУЛЕЙ

модуль имеет следующую структуру:

UNIT <имя>;

INTERFACE

<интерфейсная часть>

IMPLEMENTATION

<исполняемая часть>

BEGIN

<инициирующая часть>

END.

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

ЗАГОЛОВОК МОДУЛЯ И СВЯЗЬ МОДУЛЕЙ ДРУГ С ДРУГОМ

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

ИТЕРФЕЙСНАЯ ЧАСТЬ

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

ИСПОЛНЯЕМАЯ ЧАСТЬ

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

ИНИЦИИРУЮЩАЯ ЧАСТЬ

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







Дата добавления: 2015-03-11; просмотров: 486. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Почему важны муниципальные выборы? Туристическая фирма оставляет за собой право, в случае причин непреодолимого характера, вносить некоторые изменения в программу тура без уменьшения общего объема и качества услуг, в том числе предоставлять замену отеля на равнозначный...

Тема 2: Анатомо-топографическое строение полостей зубов верхней и нижней челюстей. Полость зуба — это сложная система разветвлений, имеющая разнообразную конфигурацию...

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

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

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