Задача 581 на Pascal
Составить программу на Турбо Паскаль, выводящую в центре экрана в графическом режиме прямоугольник, который перемещается по экрану в направлении, определяемом нажатием соответствующей клавиши управления курсором.
uses crt,graph;
var
drv,mode:integer;
PROCEDURE move_rect;
var
flag_exit,flag_move:boolean;
k:char;
x,x_old,y,y_old:word;
c1,c2:byte;
BEGIN x:=100; {начальные координаты прямоугольника} y:=100; c1:=9; {цвет прямоугольника} c2:=0; {цвет фона} flag_move:=true;
flag_exit:=false;
repeat
if keypressed then
begin
k:=readkey;
if k=#27 then flag_exit:=true; {выход} if k=#80 then {кнопка вниз} begin
y_old:=y; {сохранить старые координаты} x_old:=x;
y:=y+5; {изменить текущие координаты} flag_move:=true; {показать прямоугольник с изменениями}
end; if k=#72 then {кнопка вверх} begin
y_old:=y;
x_old:=x;
y:=y-5;
flag_move:=true;
end;
{....другие кнопки}
end;
{координаты изменились, показать изменения} if flag_move then
begin
setcolor(c2);
rectangle(x_old,y_old,x_old+100,y_old+50);
setcolor(c1);
rectangle(x,y,x+100,y+50);
flag_move:=false;
end;
until flag_exit;
END;
BEGIN
drv:=detect;
initgraph(drv,mode,'C:\bp\bgi\');
move_rect;
closegraph; END. |