Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль / spravochnictp7 / Справочник по Турбо Паскалю 7.0.rtf
Скачиваний:
94
Добавлен:
10.12.2013
Размер:
821.03 Кб
Скачать

Многовариантный выбор

Оператор САSЕ

case Выражение of

Список_констант1: Оператор1;

Список_констант2: Оператор2;

Список_константN: ОператорN;

else Оператор;

end ; { знак “;” перед else обязателен}

Выполнение оператора case заключается в выполнении одной из ветвей (Оператор1, Оператор2 …, ОператорN), в случае, если значение переменной или выражения порядкового типа, стоящего после case, совпадает с одним из значений соответствующего списка данных порядкового типа (Список_констант1, … Список_константN); в противном случае выполняется оператор, стоящий после else. Таким образом, Выражение определяет ветвь, которую нужно выполнить.

Оператор case позволяет заменить вложенные операторы if.

  • Здесь приводится полная форма оператора, но можно использовать сокращенную форму - без конструкции else.

  • Во всех приведенных конструкциях операторы могут быть составными, т.е. иметь вид:

begin Оператор1, Оператор2 … , ОператорN end ;.

21

  • При подключении модуля Crt (оператор uses Crt;) стандартный ввод и вывод автоматически связывается с устройством Crt (процедуру AssignCrt в этом случае можно опускать). При обмене информацией с файлами, отличными от стандартных, следует писать процедуру AssignCrt.

К примеру, процедуры AssignCrt (F); Rewrite (F); позволяют ускорить вывод информации раза в 3÷5 по сравнению со стандартным выводом, - первая из процедур связывает текстовую файловую переменную F с экраном с помощью обращения к видеопамяти (памяти, используемой адаптером для создания изображений на экране).

  • Для задания одного из возможных текстовых режимов работы видеоадаптера (параметр Mode) в процедуре TextMode используются следующие значения констант (стандартный режим - Co80 для цветных, Mono - для монохромных адаптеров):

const

BW40 = 0; {Черно-белый режим 40x25}

Co40 = 1; {Цветной режим 40x25}

BW80 = 2; {Черно-белый режим 80x25}

Co80 = 3; {Цветной режим 80x25}

Mono = 7; {Используется с MDA и Hercules}

Font8x8 = 256; {Используется для загружаемого шрифта в режиме 80x43

с адаптерами EGA или 80x50 - VGA}

  • Процедура Window – одна из основных - определяет текущее окно для работы в текстовом режиме. Координаты окна отсчитываются от левого верхнего угла экрана, причем выполняются условия: 1<=X1<X2<=Xmax, 1<=Y1<Y2<=Ymax. При этом Xmax может принимать два значения – 40 и 80 (для видеоадаптеров MDA и Hercules первое не используется), Ymax для большинства видеоадаптеров может принимать только одно значение – 25 (для EGA также 43, VGA – 50). В дальнейшем именно в текстовое окно будет выводиться текст (по умолчанию окно имеет размер всего экрана).

Сразу при вызове процедуры Window курсор переместится в верхний левый угол окна с координатами (1;1), а само окно очистится (заполнится цветом фона). При выводе одного символа курсор смещается вправо на одну позицию, при достижении границы окна переходит на новую строку. При заполнении окна происходит “прокрутка” окна (содержимое окна сдвинется вверх на одну строку).

  • В текстовом режиме цвет фона может быть только темного оттенка (значение от 0 до 7); цвет символов – любое из значений от 0 до 15 или 128.

Код нужного цвета можно брать из описания мнемонических констант:

const

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

Blue = 1; {Синий} LightBlue = 9; {Светло-синий}

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

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

Red = 4; {Красный} LightRed = 12; {Розовый}

Magenta = 5; {Фиолетовый} LightMagenta = 13; {Малиновый}

Brown = 6; {Коричневый} Yellow = 14; {Желтый}

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

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

22