- •7.1. Необходимость структуризации в программировании
- •7.2. Подпрограммы в языке паскаль
- •7.2.1. Стандартные библиотечные модули
- •7.2.2. Встроенные функции и процедуры
- •7.3. Процедуры и функции пользователя
- •7.3.1. Процедуры
- •7.3,2. Функции
- •7.3.3. Механизм передачи параметров
- •7.3.4. Область действия параметров
- •7.3.5. Рекурсии
- •7.3.6. Нетрадиционное использование подпрограмм
7.2. Подпрограммы в языке паскаль
За наличие подпрограмм как средства структурирования программ язык программирования Турбо Паскаль называется процедурно-ориентированным.
Подпрограммы в Турбо Паскале реализованы посредством процедур и функций. Имея один и тот же смысл и аналогичную структуру, процедуры и функции различаются назначением и способом их использования.
Процедура — это независимая именованная часть программы, которую можно вызвать по имени для выполнения определенных действий. Структура процедуры повторяет структуру программы. Процедура не может выступать как операнд в выражении. Упоминание имени процедуры в тексте программы приводит к активизации процедуры и называется ее вызовом. Например, Read(F) читает с клавиатуры некоторое значение и присваивает его переменной F, Delay(5) вызывает задержку выполнения программы на 5 мс.
Функция аналогична процедуре, но имеются два отличия: функция передает в точку вызова скалярное значение; имя функции может входить в выражение как операнд. Например, функция Chr(65) возвратит в точку вызова символ А (код ASCII — 65), Sqr(X) — возведет в квадрат значения целого или вещественного X и возвратит в точку вызова вычисленное значение квадрата числа X. F Итак, отличие подпрограмм-процедур от подпрограмм-функций состоит в том, что процедуры служат для задания совокупности действий, направленных на изменение внешней по отношению к ним программной обстановки, а функции, являясь частным случаем процедур, отличаются от них тем, что они обязательно возвращают в точку вызова основной программы единственный результат как значение имени этой функции.
Все процедуры и функции языка Турбо Паскаль делятся на две группы: встроенные (стандартные) и определенные пользователем. Первые входят в состав языка н вызываются для выполнения по строго фиксированному имени. Вторые разрабатываются и именуются самим пользователем. Все стандартные средства расположены в специализированных библиотечных модулях, которые имеют системные имена.
7.2.1. Стандартные библиотечные модули
В систему Турбо Паскаль версии 6.0 и старше включены восемь модулей: System, Crt, Dos, Graph, Graph3, Overlay, Printer, ТурбоЗ и специализированная библиотека Турбо Vision. Модуль System подключается по умолчанию, все остальные должен подключать программист с помощью зарезервированного слова uses. Например: uses Crt, Dos, Printer;
Рассмотрим кратко назначение каждого из модулей.
System — сердце Турбо Паскаля; содержащиеся в нем подпрограммы обеспечивают работу всех остальных модулей системы.
Crt — содержит средства управления дисплеем и клавиатурой компьютера.
Dos — включает средства, позволяющие реализовывать различные функции DOS.
Graphs — поддерживает использование стандартных графических подпрограмм версии Турбо Паскаль 3.0.
Overlay — содержит средства организации оверлейных программ. Printer — обеспечивает быстрый доступ к печатающему устройству.
ТигЬоЗ — обеспечивает максимально возможную совместимость с версией Турбо Паскаль 3.0. ,
Graph — содержит пакет графических средств, обеспечивающих эффективную работу с адаптерами CGA, EGA, VGA, HERC, IBM 3270, MCGA и АТТ6300.
Турбо Vision — библиотека объектно-ориентированных подпрограмм для разработки пользовательских интерфейсов.
