- •Оглавление
- •Тема1 41
- •Тема 2 Условный оператор, оператор выбора 41
- •Тема 4. Строки и символы 43
- •Предисловие
- •1 Основы построения программы на языке Турбо-Паскаль
- •1.1 Алфавит языка и специфика его использования
- •1.2 Этапы решения задачи на эвм
- •1.3 Общая структура программы на языке Паскаль
- •1.4 Выражения
- •1.4.1 Арифметические выражения
- •1.4.2 Логические выражения
- •1.5 Стандартные функции
- •2 Типы данных
- •2.1 Стандартные типы данных
- •2.1.1 Целочисленные типы
- •2.1.2 Логический тип (булевый тип).
- •2.1.3 Символьный тип
- •2.1.4 Перечисляемый тип
- •2.1.5 Интервальный тип
- •2.1.6 Вещественный тип
- •2.2 Объявление констант
- •2.3 Объявление переменных
- •3 Алгоритмизация вычислительных процессов
- •3.1. Понятие алгоритма
- •3.2 Операторы для записи линейных процессов
- •3.2.1 Оператор присваивания
- •3.2.2 Оператор ввода числовых данных
- •3.2.3 Оператор вывода числовых данных
- •3.2.4 Вывод числовых данных с форматом
- •4 Разветвляющиеся вычислительные процессы
- •4.1 Типы разветвляющихся алгоритмов
- •4.2 Операторы перехода
- •4.2.1 Условный оператор
- •4.2.3 Оператор выбора
- •4.2.4 Метка. Оператор перехода
- •5 Итерационные циклические процессы
- •5.1 Типы циклических процессов
- •5.2 Итерационные циклические процессы
- •5.2.1 Оператор цикла с предварительным условием
- •5.2.2 Оператор цикла с последующим условием
- •5.3 Оператор цикла с параметром
- •6 Структурированные типы данных
- •6.1 Массивы
- •6.2 Записи
- •6.2.1 Оператор присоединения
- •6.3 Множества
- •6.4 Строки
- •6.4.1 Основные операции
- •7 Подпрограммы
- •7.1 Процедуры
- •7.2 Функции
- •8 Работа с файлами
- •8.1 Инициация файла
- •8.2 Процедуры и функции для работы с файлами
- •8.3 Текстовые файлы
- •8.4 Типизированные файлы
- •8.5 Нетипизированные файлы
- •9 Указатели и динамическая память
- •9.1 Выделение и освобождение динамической памяти
- •10 Модули
- •10.1 Компиляция модулей
- •10.2 Стандартные модули
- •10.2.1 Модуль crt
- •10.2.2 Модуль Graph
- •10.2.3 Модуль Overlay
- •Индивидуальные задания
- •Тема 2 Условный оператор, оператор выбора
- •Тема 3.
- •Задание в - обработка числовых последовательностей
- •Тема 4. Строки и символы
- •Тема 5. Массивы
- •Тема 6. Файлы
- •Тестовые задания
- •Электронные образовательные интернет-ресурсы Дистанционные курсы
- •Электронные учебники
10.1 Компиляция модулей
Существует три режима компиляции модулей: COMPILE, MAKE, BUILD.
При компиляции модуля или программы в режиме COMPILE все перечисленные в предложении USES модули должны быть предварительно откомпилированы, и результаты компиляции помещены в одноименные файлы с расширением TPU (Turbo Pascal Unit).
В режиме MAKE компилятор проверяет наличие TPU файлов для каждого объявленного модуля. Если какой-либо из файлов не обнаружен, то система пытается отыскать одноименный файл с расширением PAS и откомпилировать его. Также компилируются те файлы, в программном модуле которых были произведены какие-либо изменения с момента последней его компиляции.
В режиме BUILD для всех TPU файлов отыскивается соответствующий PAS файл и осуществляется его перекомпиляция независимо от того, были ли сделаны в нем изменения или нет. После компиляции в этом режиме можно быть уверенным в том, что все сделанные изменения будут учтены.
Подключение модулей к основной программе и их возможная компиляция осуществляются в порядке их объявления в предложении USES. При переходе к очередному модулю система предварительно отыскивает все модули, на которые он ссылается. Ссылки модулей друг на друга могут образовывать сложную древовидную структуру. Однако запрещается явное или косвенное обращение модуля к самому себе. Т.е. следующие объявления будут неправильными:
UNIT A; UNIT B;
Interface Interface
USES B; USES A;
…….. ……….
End. End.
Обойти это ограничение можно следующим образом:
UNIT A; UNIT B;
Interface Interface
…….. ……….
Implementation Implementation
USES B; USES A;
10.2 Стандартные модули
В Турбо Паскале имеется восемь стандартных модулей: SYSTEM, DOS, CRT, GRAPH, OVERLAY, PRINTER, TURBO3, GRAPH3. Последние два введены для совместимости с более ранней версией ТП. Модули CRT, GRAPH, OVERLAY мы рассмотрим чуть позже.
Модуль SYSTEM – единственный модуль, который подключается к любой программе автоматически. Он содержит процедуры и функции стандартного Паскаля.
Модуль PRINTER делает доступным вывод текстов на матричный принтер.
Модуле DOS содержит процедуры и функции для работы с операционной системой.
10.2.1 Модуль crt
В модуле сосредоточены процедуры и функции, обеспечивающие управление текстовым режимом работы программы. С помощью входящих в модуль подпрограмм можно перемещать курсор в произвольную позицию экрана, менять цвет выводимых символов и окружающего их фона, создавать окна, управлять звуком.
В режиме текстового вывода используются следующие координаты экрана: левый верхний угол имеет координаты 1,1; горизонтальная координата возрастает слева направо, вертикальная – сверху вниз. Если на экране определено окно, все координаты определяются относительно границ окна. Координаты самого окна задаются относительно границ экрана. Для чтения клавиатуры используются две функции: KeyPressed и ReadKey. Первая определяет сам факт нажатия на любую клавишу и не приостанавливает дальнейшее исполнение программы. Вторая считывает расширенный код нажатой клавиши, и если к моменту обращения функции не была нажата ни одна клавиша, программа приостанавливает свою работу, ожидая действий пользователя.
Функция WhereX:Byte возвращает горизонтальную координату текущей позиции курсора относительно текущего окна.
Функция WhereУ:Byte возвращает вертикальную координату текущей позиции курсора относительно текущего окна.
Процедура ClrScr очищает окно (экран) заданным цветом и помещает курсор в верхний левый угол.
Процедура TextBackGround (color:byte) устанавливает цвет фона.
Процедура TextColor (color:byte) устанавливает цвет символов.
Процедура Window (X1,Y1,X2,Y2: Byte) определяет текстовое окно на экране, где X1,Y1-координаты левого верхнего угла, X2,Y2-координаты правого нижнего угла.
Для задания прямоугольной закрашенной области на экране, обычно выбирают цвет фона, далее определяют окно (Window) и производят очистку экрана (ClrScr).
Управление звуковым генератором строится по схеме Sound-Delay-NoSound. Процедура Sound включает звуковой генератор и заставляет его непрерывно генерировать звук нужного тона. Процедура Delay приостанавливает работу программы на заданное число миллисекунд. Процедура NoSound отключает звуковой генератор.