11 класс: Модули в паскале

 

11 класс: Модули в паскале

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

Структура модуля
Модуль имеет следующую структуру:
UNIT  
INTERFACE
   
IMPLEMENTATION
   
BEGIN
   
END.
Заголовок модуля состоит из зарезервированного слова  Unit(модуль) и имени модуля. Имя модуля выбирается по общим правилам и должно совпадать с именем дискового файла содержащего исходный текст модуля. Расширение в имени модуля (.pas ) не указывается  оно задается по умолчанию. Имя модуля используется для его связи с основной программой с помощью предложения  Uses. Предложение  Uses может быть помещено после заголовка модуля или за словами Interface и Implementation.

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

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

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

Исходный текст примерного модуля:



Исходный текст образца программы, использующий модуль:

Результат работы программы - EXE-файл добавлен к сообщению.
       
Задания для самостоятельного выполнения

1: Создать модуль MY_MODUL, содержащий функцию FACTOR(x) для вычисления факториала числа x и процедуру TABLUMN выводящая на экран таблицу умножения (Пифагора). Создать программу для демонстрации модуля.

2: Добавить в созданный модуль процедуры Nebo(x,c) (заполняет экран x случайными точками цветом c) и Zvezda(x,y,k,c) (рисует пятиконечную звезду с координатами верхней вершины x и y, из отрезков длиной k и цветом c). Продемонстрировать работу модуля в программе.

Внимание! Так как модуль храниться в отдельном файле для проверки вашей работы необходимо сдать весь проект! Имя архива проекта, который вы добавляете к комментарию - unit_avtor, где avtor - ваша фамилия.
Например: unit_gon4ar

Ваши помощники:

Учебник «Информатика 2 часть», К.Ю.Поляков, Е.А.Еремин, параграф 42, стр. 84-86
Сайт: http://www.pascal.helpov.net/index/pascal_modules_programming
Видео:
Уроки на языке Pascal. Урок 19. Модуль (Unit).

Вывод кириллицы в консольном приложении Lazarus
' }), node.firstChild); }, clearError : function() { BX('err_comment_'+this.id[1]).innerHTML = ""; }, }; window.convertFormToArray = function(form, data) { data = (!!data ? data : []); if(!!form){ var i, _data = [], n = form.elements.length; for(i=0; i
Добавить комментарий
Мне нравится0
Кирилл Шапкин
22.02.2017 07:44:11
Создание модулей Шапкин 11А.
Ответить Ссылка Мне нравится0
Мне нравится0
ilya
22.02.2017 07:49:10
Щедринский Илья 11А
Ответить Ссылка Мне нравится0
Мне нравится0
Максим Костин
22.02.2017 07:50:00
Работа
123
Ответить Ссылка Мне нравится0
Мне нравится0
Кирилл Шапкин
22.02.2017 07:50:08
Модуль Шапкин.
Ответить Ссылка Мне нравится0
Мне нравится0
Danil_lendel
22.02.2017 07:50:43
modul_lendel
1
Ответить Ссылка Мне нравится0
Мне нравится0
Зуева Анастасия
22.02.2017 07:52:27
Unit_zueva
Ответить Ссылка Мне нравится0
Мне нравится0
ElizavetaKislitsyna
22.02.2017 07:55:25
MODUL
Ответить Ссылка Мне нравится0
Мне нравится0
Константин Душкин
22.02.2017 07:58:52
123
Ответить Ссылка Мне нравится0
Мне нравится0
RafaelA
24.02.2017 10:00:04
Unit_Абубекеров
Абубекеров 2 группа
Ответить Ссылка Мне нравится0
Мне нравится0
Екатерина Худякова
25.02.2017 12:21:24
Худякова
Ответить Ссылка Мне нравится0
Мне нравится0
АюповД
25.02.2017 12:22:30
/
Ответить Ссылка Мне нравится0
Мне нравится0
Алиева Джамиля
25.02.2017 12:24:27
/
Ответить Ссылка Мне нравится0
Мне нравится0
Кристина Козлова
25.02.2017 12:25:01
.
Ответить Ссылка Мне нравится0
Мне нравится0
Эльмир
25.02.2017 12:26:36
........
Ответить Ссылка Мне нравится0
Мне нравится0
Московец Надя
25.02.2017 12:28:35
Классная работа.
Ответить Ссылка Мне нравится0
Мне нравится0
Regina_Gumerova
25.02.2017 12:28:35
gfh
Ответить Ссылка Мне нравится0
Мне нравится0
Максимов Николай
25.02.2017 12:28:43
Ответить Ссылка Мне нравится0
Мне нравится0
Дима Куфтерин
25.02.2017 12:30:07
25.02
25.02
Ответить Ссылка Мне нравится0
Мне нравится0
КареваДД
25.02.2017 12:31:06
Работа
Карева 11б
Ответить Ссылка Мне нравится0
Мне нравится0
Алиева Джамиля
26.02.2017 11:02:06
/
Ответить Ссылка Мне нравится0
Мне нравится0
Московец Надя
26.02.2017 11:08:36
Изменённая работа.
Ответить Ссылка Мне нравится0
Мне нравится0
Артур Даньшин
26.02.2017 13:24:20
Даньшин 11 б
Ответить Ссылка Мне нравится0
Мне нравится0
КареваДД
27.02.2017 15:47:51
Работа
Карева 11б
Ответить Ссылка Мне нравится0
Мне нравится0
Сашенька Тойкка
28.02.2017 07:32:38
СДелал все,кроме звезды
Ответить Ссылка Мне нравится0
Мне нравится0
Maksim
28.02.2017 07:44:03
Модуль
Я сделаль
Ответить Ссылка Мне нравится0
Мне нравится0
Арсланов
28.02.2017 07:44:35
Ответить Ссылка Мне нравится0
Мне нравится0
GJulia
28.02.2017 07:46:18
Ответить Ссылка Мне нравится0
Мне нравится0
Даник
28.02.2017 07:54:02
TaranDanil
MODULI
Ответить Ссылка Мне нравится0
Мне нравится0
bulatshakirov23524
28.02.2017 07:55:53
Modul
:(
Ответить Ссылка Мне нравится0
Мне нравится0
Маргарита Макова
28.02.2017 07:57:43
Модуль
Ответить Ссылка Мне нравится0

....