Автор работы: Пользователь скрыл имя, 25 Ноября 2013 в 17:14, курсовая работа
К основным достоинствам языка следует отнести гибкость и надежность, простоту и ясность конструкций, легкость реализации на ЭВМ, возможность полного контроля правильности программ во время компиляции и выполнения, наличие набора структурных типов данных (массивов, файлов и записей), возможность построения новых типов данных.
Версия языка TURBO PASCAL V 7.0. включает в себя возможности:
- использование отдельно компилируемых модулей;
- интегрированный отладчик;
- интегрированная среда разработчика;
- объектно-ориентированную оболочку для создания прикладных программ.
Введение
Постановка задачи
Информационные системы
Информационно-поисковые системы
Информационно-справочные системы
Описание программы
Язык программирования Паскаль
Модуль Graph
Модуль Crt
Заключение
Список литературы
Графическая страница — область оперативной памяти компьютера (карта экрана), используемая для запоминания информации о светимости (цвете) каждого пикселя.
Различают следующие графические режимы работы для каждого типа адаптеров.
Адаптер CGA эмулирует пять графических режимов, среди них режимы низкого разрешения экрана — 320x200 пикселей:
палитра 0: светло-зеленый, розовый, желтый + черный,
палитра 1: светло-голубой, светло-фиолетовый, белый + черный,
палитра 2: зеленый, красный, коричневый + черный,
палитра 3: голубой, фиолетовый, светло-серый + черный;
и высокого разрешения экрана — 640x200 при использовании двух цветов, причем один из них всегда черный.
Графический адаптер CGA использует одну страницу.
Адаптер EGA эмулирует графические режимы CGA и режимы низкого разрешения: 6400x200, 16 цветов, 4 страницы; высокого разрешения: 640x350, 16 цветов, 1 страница.
Адаптер VGA эмулирует режимы адаптеров CGA, EGA и режим высокого разрешения: 640x480, 16 цветов, 1 страница.
Адаптер SVGA эмулирует режим адаптера VGA, достигая режима разрешения 1024x768, 256 цветов (оттенков).
Для модуля Graph определены следующие процедуры и функции.
Управление графическим режимом
Процедура InitGraph — инициирует графический режим работы адаптера.
Формат:
InitGraph (Driver,Mode,’’);
Var
Driver, Mode: Integer;
s,m: String;.
Переменные:
Driver — тип графического драйвера: Const. Диапазон значений:
Detect = 0; {Режим автоопределения типа драйвера}
CGA=1;
MCGA = 2;
EGA = 3;
VGA = 9;.
Mode — режим работы графического адаптера. Значения Mode для EGA:
Const
EGALo = 0; {640x200, 16 цветов}
EGAHi=l; {640x350, 16 цветов}
EGAMonoHi = 3; {640x350, 2 цвета}
для VGA:
Const
VGALo = 0; {640x200}
VGAMed= 1; {640x350}
VGAHi = 2; {640x480}
Процедура SetGraphMode — устанавливает новый режим работы адаптера.
Формат: SetGraphMode (Mode: Integer);.
Mode — код устанавливаемого режима.
При неопределенном значении Mode режим работы драйвера определяется максимальным значением константы Mode.
Процедура CloseGraph — восстанавливает текстовый режим работы экрана.
Формат: CloseGraph;.
Функция GraphResuIt — записывает результат обращения к графическим процедурам. Значение GraphResuIt = 0, если обращение успешно, иначе — отрицательное число — код ошибки. Например:
GraphResuIt = - 1 означает, что не инициирован графический режим;
GraphResuIt = - 2 означает, что не определен тип драйвера;
GraphResuIt = - 14 — неправильный номер шрифта.
Наиболее частая ошибка — неправильно определено место расположения файла GRAPH.TPU, чтобы избежать ошибки, необходимо: в Турбо-среде в диалоговом окне Options/Directories в поле Unit Directories указать каталог, в котором расположен этот файл.
После обращения к функции GraphResuIt признак ошибки сбрасывается, и повторное обращение к ней вернет ноль.
Функция GraphErrorMsg — дает текстовое сообщение коду ошибки.
Формат: GraphErrorMsg (Code: Integer): String.
Code — код ошибки, возвращаемый функцией GraphResuIt.
Управление цветом и палитрой
Процедура SetColor — устанавливает текущий цвет линий и символов.
Формат: SetColor (Color: Word);
Color — цвет линий и символов
В модуле Graph используются константы для задания цвета модуля СП.
Процедура SetBkColor — устанавливает цвет фона экрана.
Формат: SetBkColor(Color: Word);
Color — цвет фона экрана.
Color — цвет заполнения.
Процедура Rectangle — вычерчивает прямоугольник с указанными координатами углов.
Формат: Rectangle (xl,yl,x2,y2: Integer);.
Прямоугольник вычерчивается с использованием текущего цвета и текущего стиля линий.
Используется
текущий стиль линий
Работа с линиями
Процедура Line — изображает линию между указанными координатами начала и конца.
Формат: Line(Xl,Yl,X2,Y2: Integer);
XI, Yl — координаты начала линии;
Х2, Y2 — координаты конца линии.
В процедурах Line, LineTo, LineRel линии вычерчиваются текущим стилем и текущим цветом.
Процедура SetlineStyle — устанавливает новый стиль вычерчивания линий.
Формат: SetLineStyle(Type,Pattern,
Type — тип линии, определяется константой из следующего ряда:
Const
SolidLn = 0; {Сплошная линия}
DottedLn = 1; {Точечная линия}
CenterLn = 2; {Штрих-пунктирная линия}
DashedLn = 3; {Пунктирная линия}
UserBitLn = 4. {Узор линии определяет пользователь}.
Pattern — образец линии: состоит из двух байтов, каждый бит которых соответствует светящемуся пикселю в линии (16 пикселей); этот отрезок повторяется по всей длине линии. Pattern указывается только для линий, вид которых определяет пользователь (например, для Туре = UserBitLn).
Thick — толщина линии, параметр может принимать два значения:
Const
NormWidth = 1; {Толщина в один пиксель}
ThickWidth = 3. {Толщина в три пикселя}.
Построение криволинейных фигур
Процедура Ellipse — изображает эллипсную дугу. Формат: Ellipse(X,Y: Integer; BegA,EndA,RX,RY: Word);. X, Y — координаты центра;
BegA, EndA — начальный и конечный углы дуги;
RX, RY — горизонтальный и вертикальный радиусы эллипса в пикселях.
Процедура Arc — изображает дугу окружности. Формат: Arc(X,Y: Integer; BegA,EndA,R: Word);.
X, Y — координаты центра;
BegA, EndA — начальный и конечный углы дуги;
R — радиус.
Углы отсчитываются против часовой
стрелки! Нулевой угол
соответствует горизонтальному вектору
слева направо.
Процедура Circle — вычерчивает окружность.
Формат: Circle(X,Y: Integer; R: Word);.
X, Y — координаты центра;
R — радиус в пикселях в горизонтальном положении.
Окружность выводится текущим цветом, толщина линий – текущим стилем, вид линии — всегда SolidLn (сплошная).
Работа с текстом
Процедура OutText — выводит текстовую строку, начиная с текущего положения указателя.
Формат: OutText(Txt: String);.
Txt — выводимая строка.
Процедура OutTextXY — выводит строку, начиная с заданного места.
Формат: OutTextXY(X,Y: Integer; Txt: String);.
X, Y — координаты точки вывода;
Txt — выводимая строка.
Процедура SetTextStyle — устанавливает стиль текстового вывода на графический экран.
Формат: SetTextStyle(Font,Direct,Size: Word);.
Font — код (номер) шрифта, определяется константой из следующего ряда:
Const
DefaultFont = 0; {Точечный шрифт 8x8}
TriplexFont = 1; {Утроенный шрифт TRIP.CHR]
SmallFont = 2; {Уменьшенный шрифт LITT.CHR)
SansSerifFont = 3; {Прямой шрифт SANS.CHR)
GothicFont = 4. {Готический шрифт GOTH.CHR)
Direct — код направления, определяется константой 0 или 1:
Const
HorizDir = 0; {Слева направо}
VertDir = 1. {Снизу вверх}
Size — код размера шрифта, выбирается из диапазона (1..10), минимально различимый шрифт соответствует коду 4.
3.3. Модуль Crt
Модуль Crt обеспечивает управление текстовым режимом работы экрана: перемещает курсор по экрану, изменяет цвет фона (экрана) и символов (знаков на экране), создает окна, управление звуком и др.
Его назначение — создание и обновление различного рода окон, меню и других атрибутов диалоговых программ. Модуль состоит из подпрограмм, оформленных в виде библиотеки (модуля).
Модуль Crt выполняет различные процедуры и функции.
Процедура ClrScr — очищает экран или окно: экран заполняется цветом фона, а курсор устанавливается в верхний левый угол экрана или окна.
Процедура TextColor — определяет цвет выводимых символов.
Формат: TextColor(Color); Color: Byte.
Процедура Text Background — определяет цвет фона.
Формат: TextBackground(Color); Color: Byte.
Окраска фона осуществляется после
использования процедуры очистк
После восстановления исходного цветазнаков на экране компьютера необходимо обратиться к процедуре Write/Writeln, так как только в этом случае в специальную переменную TextAttr модуля Crt заносятся цветовые определения!
Для установки цвета можно использовать соответствующие коды — константы цветов (табл. 1).
Таблица 1
Константы модуля Crt
Const |
Константы цветов |
Описание цвета |
Black Blue Green Cyan Red Magenta Brown LightGray DarkGray LightBlue LightGreen LightCyan LightRed LightMagenta Yellow White Blink |
= 0 = 1 = 2 = 3 = 4 = 5 = 6 = 7 = 8 = 9 = 10 = 11 = 12 = 13 = 14 = 15 = 128 |
Черный Синий Зеленый Голубой Красный Фиолетовый Коричневый Светло-серый Темно-серый Светло-синий Светло-зеленый Светло-голубой Розовый Светло-фиолетовый Желтый Белый Мерцание символа |
Процедура TextMode – задает соответствующий текстовый режим работы адаптера.
Код режима TextMode запоминается с помощью глобальной переменной LastMode, при ее выполнении сбрасываются установки цвета и окон, экран очищается, курсор устанавливается в верхнем левом углу экрана.
Формат: TextMode(Mode); Mode: Word,
Где Mode – код текстового режима:
Таблица 2
BW40 Co40 BW80 Co80 Mono Font8x8 |
= 0 = 1 = 2 = 3 = 7 = 256 |
Черно-белый режим 40х25 Цветной режим 40х25 Черно-белый режим 80х25 Цветной режим 80х25 Используется с MDA Используется для загружаемого шрифта в режиме 80х43 или 80х50 |
Процедура GotoXY – переводит курсор в нужное место экрана или текущего окна.
Формат: GotoXY(X,Y); X,Y:Byte;
где X,Y – новые координаты курсора.
Процедура Delay – обеспечивает задержку работы программы на заданный интервал времени (в миллисекундах).
Формат: Delay(t); t:Word;.
Например: Delay(10000);.
Функция ReadKey – возвращает значение символа клавиатуры (Char); форма записи a:=ReadKey;.
Ввод символа с помощью этой функции не сопровождается эхо-повтором.
Каждому символу клавиши клавиатуры в компьютере ставится в соответствие определенный код, состоящий из дополнительной цифры. Такой код определяется как расширенный код клавиши.
Расширенный код клавиш - #0+ код клавиши символа (ASCII): к ним относятся клавиши <F1> - <F10>?, <Ins>, <Home>, <Del>, <End>, <PageUp>, <PageDn>.
#0 используется для
указания программе на
Функция KeyPressed – указывает состояние буфера клавиатуры:
False – буфер пуст;
True – в буфере есть хотя бы один символ, не прочитанный программой.
Обращение к функции KeyPressed не задерживает исполнения программы.
Заключение
Паскаль - замечательный язык программирования, который относительно прост в изучении, довольно ясен и логичен и, будучи первым изучаемым языком программирования, приучает к хорошему стилю. Паскаль воспитывает дисциплину структурного программирования и программирования вообще лучше, чем другие языки программирования, такие, как, например Бейсик.