TURBO PASCAL |
Новости |
Практическое задание N 1. 40
1. Разделить
экран по горизонтали на две части.
В первой части создать окно и вывести
все символы от 0 до 255 с указанием номеров, во втором окне в двух строчках
вывести два символа, бегающих
в противоположные стороны.
2. Разделить
экран по вертикали на две части.
В первой части создать окно и вывести
все символы от 0 до 255 с указанием номеров, во втором окне в двух колонках
вывести два символа, бегающих
в противоположных направлениях.
Примечание: номера символов выбрать из
первого окна.
При выводе "бегающих" символов
изображение курсора портит картинку.
Избавиться от
курсора можно, поместив
его в "дальний угол" перед задержкой
программы, например: GotoXY(1, 1); delay(100); Можно также изменить размер
курсора до нуля с помощью следующих
операторов: В разделе описания программы:
Uses DOS;
Var r: registers; B разделе выполнения
программы: r.ah:=1;
r.ch:=$20; intr(16,r); Приведем пример программы "падающие символы" для цифр от 0
до 9, имеющих кода PROGRAM PULL_CH;
Uses CRT, DOS;
var r: registers;
x, y, i,
xm, ym: byte; c: array [41..57] of char; cha:char; BEGIN
randomize;
textMode(3);
xm:=lo(WindMax)+1; ym:=hi(WindMax)+1; textBackGround(blue);
ClrScr; TextColor(14);
r.ah:=1; r.ch:=$20; intr(16,r); for i:=48 to 57 do begin c[i]:=chr(i);
write(c[i]) end;
{ вывод
символов
с
позиции (1, 1) } repeat gotoXY(10, 10);
Write('ПРИГОТОВЬТЕСЬ -нажмите ENTER');
cha:= readKey until
cha=#13; { вывод надписи }
delay(500); gotoxy(10, 10); clreol;
{
стирание надписи }
GOTOXY(1, YM); Write('НАЖМИТЕ КЛАВИШУ С
ПАДАЮЩИМ СИМВОЛОМ');
Write('
ДЛЯ ОКОНЧАНИЯ -нажмите ESC'); repeat i:=
random(10)+48; c[i]:=chr(i); { выбор случайной цифры } x:=
i-48+1; for y:= 2 to ym-1 do
begin
gotoXY(x,y); write(c[i]); delay(200); { вывод
цифры }
gotoXY(x,y); write('_'); {
стирание
цифры } if keypressed then cha:=readkey;{ при нажатии клавиши
- считать
цифру } if cha=#27 then
Break; if cha=c[i] then Break
end {
досрочный
выход
из
цикла "for. . . " } until
cha=#27; {
выход при нажатии ESC }
textMode(3) END. |
(с) Все права защищены. По всем интересующим вопросам прошу писать электронный адрес |