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

Модуль System

Модуль содержит базовые средства языка, которые поддерживают ввод-вывод, работу со строками, операции с плавающей точкой и динамическое распределение памяти. Этот модуль автоматически используется во всех программах, и его не требуется указывать в операторе uses. Он содержит все стандартные и встроенные процедуры, функции, константы и переменные Паскаля.

Модуль Crt

Модуль предназначен для организации эффективной работы с экраном, клавиатурой и встроенным динамиком. При подключении модуля Crt выводимая информация посылается в базовую систему ввода-вывода (ВIОS) или непосредственно в видеопамять.

В текстовом режиме экран представляется как совокупность строк и столбцов. Каждый символ располагается на так называемом знакоместе на пересечении строки и столбца. Символы хранятся в специальной части оперативной памяти, называемой видеопамятью. Ее содержимое отображается на экране.

Рис. 1.

Под каждый символ отводится два байта: один байт занимает ASCII-код символа, другой байт хранит атрибуты символа: его цвет, цвет фона и признак мерцания (рис. 1). Можно получить восемь различных цветов фона и 16 цветов символов.

Модуль Crt позволяет:

  • выполнять вывод в заданное место экрана заданным цветом символа и фона;

  • открывать на экране окна прямоугольной формы и выполнять вывод в пределах этих окон;

  • очищать экран, окно, строку и ее часть;

  • обрабатывать ввод с клавиатуры;

  • управлять встроенным динамиком.

Работа с экраном

Текущие цвета символа и фона задаются с помощью процедур TextColor и TextBackGround и действуют на следующие за ними процедуры вывода. Вывод выполняется в текущую позицию курсора. Для ее изменения служит процедура GotoXY.

Окно определяется с помощью процедуры Window. Оно задается координатами левого верхнего и правого нижнего угла.

Очистка текущего окна выполняется с помощью процедуры ClrScr, которая заполняет его пробелами с текущим цветом фона и устанавливает курсор в левый верхний угол.

Пример #1.

Программа "угадай число".

program luck;

uses crt;

const max = 10;

var

i, k, n : integer;

begin

clrscr; { очистить экран }

randomize; i := random(max); { загадать число }

window(20, 5, 60, 20); { определить окно }

TextBackGround(Blue); { цвет фона - синий }

clrscr; { залить окно фоном }

TextColor(LightGray); { цвет символов - серый }

k := -1; { счетчик попыток }

GotoXY(12, 5); writeln(' Введите число : ');

repeat { цикл ввода ответа }

GotoXY(20, 9); { установить курсор }

readln(n); { ввести число }

inc(k);

until i = n;

window(20, 22, 60, 24); { определить окно результата }

TextAttr := 2 shl 4 + 14; { желтые символы за зеленом фоне }

clrscr; { залить окно фоном }

GotoXY(6, 2); { установить курсор }

writeln(' Коэффициент невезучести : ', k / max :5:1);

readkey; { ждать нажатия любой клавиши }

TextAttr := 15; { белые символы на черном фоне }

clrscr; { очистить после себя экран }

end.