Некоторые константы модуля

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; {Мерцание символа}

Некоторые функции и процедуры модуля

function KeyPressed: Boolean;

Возвращает True, если на клавиатуре была нажата клавиша, и False в противном случае. Не задерживает исполнение программы.

function ReadKey: char;

Читает символ с клавиатуры без эхоповтора на экране. Приостанавливает исполнение программы до нажатия на любую клавишу, кроме Shift, Ctrl, Alt, CapsLock, NumLock, ScrollLock.

function WhereX: byte;

Возвращает горизонтальную координату текущей позиции курсора.

function WhereY: byte;

Возвращает вертикальную координату текущей позиции курсора.

procedure ClrScr;

Очищает экран и помещает курсор в верхний левый угол.

procedure ClrEol;

Удаляет все символы от текущей позиции курсора до конца строки без перемещения курсора.

procedure DelLine;

Удаляет строку, на которой находится курсор, и перемещает все строки ниже этой на строку вверх.

procedure InsLine;

Вставляет пустую строку в позицию экрана

procedure GotoXY( X,Y: Byte);

Перемещает курсор в нужное место экрана.

procedure HighVideo;

Устанавливает высокую яркость символов.

procedure LowVideo;

Устанавливает низкую яркость символов.

procedure NormVideo;

Устанавливает нормальную яркость символов.

procedure TextColor(Color: Byte);

Устанавливает цвет символов. В качестве передаваемого значения могут выступать константы цветов.

procedure TextBackground(Color: Byte);

Устанавливает цвет фона.

procedure Sound(F: word);

Включает звуковой генератор. F - частота звука, Гц.

procedure NoSound;

Выключает звуковой генератор.

procedure Delay(D: word);

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

Примеры использования процедур и функций модуля Crt

Пример 1.

uses Crt;

begin

...

TextColor(Red); {устанавливает красный цвет}

writeln(’Ага!’);

TextColor(Red+Blink); {устанавливает мигающий красный цвет}

writeln(’Ого!’);

...

end.

Пример 2.

Задание. С помощью символов «*» построить на экране график функции , таким образом, чтобы график функции был «растянут» на весь экран. Диапазон изменения .

Решение. Размер экрана - 80 столбцов на 25 строк. Верхний левый угол экрана имеет координаты (1, 1), правый нижний - (80, 25). Шаг по х должен быть подобран таким образом, чтобы диапазон изменения «укладывался» в 80 позиций. Область значений функции у - [-1, 1], поэтому по у также должен быть подобран коэффициент «растягивающий» область значений на 25 строк.

uses Crt;

var i: integer;

x, y: real;

begin

ClrScr;

for i:=1 to 80 do

begin

x := i * 2*pi/(80-1);

y := 12 – 12*sin(x);

gotoXY(i,trunc(y));

write(’*’);

end;

repeat

until KeyPressed;

end.