- •Р.К. Ахмадулин технология программирования
- •Оглавление
- •§1. Основные понятия
- •Основные символы языка Паскаль
- •Элементарные конструкции языка Паскаль
- •Примеры записи чисел и выражений на языке Паскаль
- •Вопросы для самопроверки
- •§2. Типы данных
- •Целые типы
- •Вещественные типы
- •Символьный тип
- •Логический тип
- •Скалярные типы, определяемые пользователем
- •Вопросы для самопроверки
- •§3. Операции и выражения
- •Приоритет операций и отношений в выражениях
- •Стандартные (встроенные) функции
- •Вопросы для самопроверки
- •§4. Структура программы
- •Комментарии
- •Директивы компилятора
- •Оформление исходного текста
- •Вопросы для самопроверки
- •§5. Переменные и константы. Оператор присваивания
- •Понятие константы
- •Понятие переменной
- •Оператор присваивания
- •Совместимость типов данных
- •Понятие типизированной константы
- •Вопросы для самопроверки
- •§6. Процедуры ввода и вывода
- •Процедуры вывода
- •Форматированный вывод
- •Процедуры ввода
- •Вопросы для самопроверки
- •§7. Условный оператор и оператор выбора. Оператор перехода
- •Условный оператор if
- •Понятие составного оператора
- •Оператор выбора
- •Оператор перехода
- •Вопросы для самопроверки
- •§8. Операторы цикла
- •Циклы с заданным числом итераций
- •Циклы с предусловием
- •Циклы с постусловием
- •Вопросы для самопроверки
- •§9. Пример использования циклов
- •Вычисление факториала
- •Вычисление суммы по заданной формуле
- •Вычисление суммы по формуле с заданной точностью
- •Вычисление максимального элемента последовательности
- •Вычисление длины последовательности элементов
- •Вопросы для самопроверки
- •§10. Массивы
- •Описание массива
- •Обращение к элементам массива
- •Многомерные массивы
- •Допустимые операции с массивами
- •Инициализация массива
- •Вопросы для самопроверки
- •§11. Алгоритмы сортировки
- •Сортировка выбором
- •Сортировка вставкой
- •Пузырьковая сортировка
- •Улучшенные сортировки
- •Вопросы для самопроверки
- •§12. Строковый тип
- •Описание строковых переменных
- •Операции над строками
- •Процедуры и функции для работы со строками
- •Вопросы для самопроверки
- •§13. Записи
- •Объявление записи
- •Обращение к записям
- •Оператор присоединения with
- •Записи с вариантами
- •Инициализация записи
- •Вопросы для самопроверки
- •§14. Множества
- •Описание множеств
- •Операции над множествами
- •Пример использования множеств
- •Множества как типизированная константы
- •Вопросы для самопроверки
- •§15. Процедуры и функции
- •Понятие процедуры и функции
- •Структура процедуры
- •Структура функции
- •Формальные параметры
- •Глобальные и локальные объекты
- •Вопросы для самопроверки
- •§16. Модули
- •Понятие модуля
- •Стандартные модули в Турбо Паскаль
- •Подключение модулей
- •Структура модуля
- •Вопросы для самопроверки
- •§17. Файлы
- •Понятие файла
- •Процедуры и функции для работы с файлами
- •Понятие буфера ввода-вывода
- •Вопросы для самопроверки
- •§18. Типизированные файлы
- •Описание типизированных файлов
- •Операции над типизированными файлами
- •Последовательный и прямой доступ
- •Вопросы для самопроверки
- •§20. Текстовые файлы
- •Описание типизированных файлов
- •Чтение и запись
- •Конец строки и конец файла
- •Дополнительные процедуры для работы с текстовыми файлами
- •Файлы Input и Output
- •Вопросы для самопроверки
- •§21. Ссылки и указатели
- •Понятие указателя
- •Описание указателей
- •Операции с указателями
- •Выделение и освобождение динамической памяти
- •Вопросы для самопроверки
- •Рекомендуемая литература
- •Технология программирования
- •625000, Тюмень, ул. Володарского, 38
- •625039, Тюмень, ул. Киевская, 52
Понятие модуля
Турбо Паскаль обеспечивает доступ к большому числу встроенных констант, типов данных, переменных, процедур и функций. Их количество велико, однако, в программе они редко используются все сразу. Поэтому они разделены на связанные группы, называемые модулями. Это позволяет использовать только те модули, которые необходимы в программе.
Под модулем понимают кусок программы, компилируемый отдельно от остальных ее частей.
Программный модуль представляет собой набор констант, типов данных, переменных, процедур и функций. Каждый модуль аналогичен отдельной программе на Паскале: он может иметь основное тело, которое вызывается перед запуском программы и осуществляет необходимую инициализацию.
Возможность раздельной компиляции является одним из основных преимуществ модулей. Если все подпрограммы содержатся в одном файле, то исправление единственной ошибки в какой-либо подпрограмме приведет к неизбежной перекомпиляции всего кода, что не всегда удобно.
Стандартные модули в Турбо Паскаль
Турбо Паскаль предоставляет пользователю семь стандартных модулей. Пять из них – System, Graph, DOS, Crt и Printer – обеспечивают поддержку обычных программ на Паскале. Два других – Тurbo3 и Graph3 – предназначены для обеспечения совместимости с программами и файлами данных, созданными под версией 3.0 Турбо Паскаля. Все семь модулей хранятся в файле TURBO.TPL.
Модуль System является основным и не требует специального подключения в программе (его содержимым можно пользоваться по умолчанию). Он содержит в себе следующие типы подпрограмм:
подпрограммы для обработки величин порядковых типов данных (dec, inc, odd, pred, succ);
арифметические функции;
функции преобразования типов данных (chr, ord, round, trunc);
процедуры управления процессом выполнения программы (break, continue, exit, halt);
подпрограммы обработки строк (concat, copy, delete, insert, length, pos, str, val);
подпрограммы файлового ввода и вывода;
подпрограммы динамического распределения памяти (dispose, freemem, getmem, new);
функции для работы с указателями и адресами (addr);
некоторые другие подпрограммы (например: exclude, include, random, randomize, upcase).
Модуль Graph содержит разнообразнейшие подпрограммы, которые позволяют создавать на экране различные рисунки из многоцветных геометрических фигур, а также управляет палитрами, фактурами фона и шрифтами.
Модуль Dos позволяет обмениваться информацией с операционной системой (системное время, прерывания, состояния параметров окружения, процедуры обработки процессов, работа с дисковым пространством).
Модуль Crt служит для организации "хорошего" вывода на экран.
Модуль Printer позволяет производить вывод информации не на консоль, а на принтер (под операционной системой DOS).
Заметим, что для программ на языке Паскаль доступен и ряд других распространенных модулей.
Подключение модулей
Для того чтобы подключить к программе один или несколько модулей, необходимо сразу после заголовка программы поместить следующую строку:
uses <имя_модуля_1>, …, <имя_модуля_N>;
Все константы, типы данных, переменные, процедуры и функции, описанные в модуле, после его подключения к программе становятся доступными ей без дополнительных объявлений.
Например, можно пользоваться функцией abs, не объявляя и не описывая ее, поскольку эта функция включена в состав стандартного модуля System, автоматически подключаемого к любой программе на языке Паскаль. Если же требуется очистить экран монитора перед выдачей результатов, то придется подключить к программе модуль crt и воспользоваться содержащейся в нем процедурой clrscr.