Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по Паскалю отредактированное №2..doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
263.68 Кб
Скачать

190

Приложение 5.

СОВРЕМЕННАЯ ГУМАНИТАРНАЯ АКАДЕМИЯ

Языки и методы

программирования

ЮНИТА 2

Модуль CRT.

Структурное программирование

МОСКВА 2003

Современная Гуманитарная Академия

Дистанционное образование

_______________________________________________________________

Рабочий учебник

Фамилия, имя, отчество ___________________________________________

Группа _________________________________________________________

Номер контракта _________________________________________________

Языки и методы

программирования

ЮНИТА 2

Модуль CRT.

Структурное программирование

МОСКВА 2003

Разработано Вострокнутовым И.Е.

КУРС: ЯЗЫКИ ИМЕТОДЫ ПРОГРАММИРОВАНИЯ

Юнита 1. Основы программирования в Турбо Паскаль. Ядро.

Юнита 2. Модуль CRT. Структурное программирование.

Юнита 3. Модуль GRAPH. Модульное и объектное программирование.

Юнита 2

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

Для слушателей Школы программистов Современной Гуманитарной Академии, 8 – 11 классов общеобразовательной школы.

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

СОВРЕМЕННАЯ ГУМАНИТАРНАЯ АКАДЕМИЯ, 2004

1. Модуль crt

    1. Назначение модуля crt, его подключение и использование

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

Стандартные для Турбо Паскаль возможности ввода-вывода текстовой информации ограничены двумя операторами ввода – Read, Readln и вывода Write, Writeln. Процедуры Read, Readln вводят с клавиатуры только типизированнные данные, причем с обязательным эхоповтором набираемых символов на экране. Это не всегда удобно. Например, с их помощью нельзя определить факт нажатия какой-либо клавиши, особенно одной из клавиш управления указателя или функциональной клавиши. Процедуры Write, Writeln выводят на экран сообщения, начиная с того места, где находился указатель. Текст отображается лишь белым цветом на черном фоне. Обычно этого явно недостаточно для разработки полноценных диалоговых программ.

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

Для того, чтобы использовать процедуры и функции модуля CRT, необходимо его имя указать в операторе USES программы:

Uses CRT;

1.2. Процедуры управления цветом

Цвет выводимых символов в модуле CRT определяет процедура TextColor. Заголовок процедуры:

Procedure TextColor(Color:Byte);

Процедура TextBackGround определяет цвет фона. Ее заголовок:

Procedure TextBackGround(Color:Byte);

Единственным параметром этих процедур является выражение типа Byte, определяющее код нужного цвета. Этот код удобно пределять с помощью следующих констант, объявленных в модуле CRT:

const

Black =0; {Черный}

Blue =1; {Темно-синий}

Green =2; {Темно-зеленый}

Cyan =3; {Бирюзовый}

Red =4; {Красный}

Magenta =5; {Фиолетовый}

Brown =6; {Коричневый}

LightGray =7; {Светло-серый}

DarkGray =8; {Темно-серый}

LightBlue =9; {Синий}

LightGreen =10; {Светло-зеленый}

LightCyan =11; {Светло-бирюзовый}

LightRed =12; {Розовый}

LightMagenta=13; {Малиновый}

Yellow =14; {Желтый}

White =15; {Белый}

Blink =128;{Мерцание символа}

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

Program DemoColor;

Uses CRT;

var a,b:integer;

Begin

for a:=0 to 15 do

begin

TextBackground(15-a);

TextСolor(a);

writeln('Цвет текста ', a, ' Цвет фона ', 15-a);

end;

TextBackground(0);

TextСolor(15);

Writeln(‘мерцающий белый цвет на черном фоне’);

readln;

End.

В результате работы данной программы видно, что цвет символов может меняться в пределах от 0 до 15, а цвет фона от 0 до 7.

Действие процедур TextColor и TextBackColor сводится к записи в специальную переменную TextAttr соответствующих значений. Переменную TextAttr необходимо применять, используя следующую форму:

TextAttr:=Цвет_Символов+16*Цвет_Фона [+Мерцание]

квадратные скобки означают, что данный атрибут не обязателен.

Процедура ClrScr очищает экран или окно. После обращения к ней экран или окно заполняется цветом фона и курсор устанавливается в его левый верхний угол. Например:

Program DemoClrScr;

Uses CRT;

Var i:integer;

Begin

for i:=1 to 15 do

begin

Textcolor(i);

TextBackGround(15-i);

ClrScr;

Writeln('Цвет текста ',i,' цвет фона ',15-i);

Readln;

end;

End.