Демонстрация перемещающегося изображения — Pascal(Паскаль)

program move;
uses Graph, Crt;
var
 x,y,r:integer;     {  координаты центра и радиус окружности }
 dx:integer;        { шаг перемещения окружности }
 dt:integer;        { задержка перерисовки на новом месте }

 grDriver:integer;  { драйвер }
 grMode:integer;    { графический режим }
 grPath:string;     { место расположения драйвера }
 ErrCode:integer;   { результат инициализации граф. режима }

begin
 grDriver := VGA;     { режим VGA}
 grMode:=VGAHi;       { разрешение 640х480}
 grPath:='d:\tp\bgi'; { драйвер, файл EGAVGA.BGI, находится
                        в каталоге d:\tp\bgi }

 InitGraph(grDriver, grMode,grPath);
 ErrCode := GraphResult;
 if ErrCode <> grOk then
   begin
     writeln('Ошибка инициализации графического режима.');
     writeln('Для завершения работы нажмите <Enter>');
     readln;
     Halt(1);
  end;

 x:=0;    { начальное положение окружности }
 y:=100;
 r:=10;   { радиус окружности }
 dx:=2;   { шаг перемещения   }
 dt:=100; { задержка }

 while x<639 do
    begin
       { нарисовать окружность }
       SetColor(Yellow);
       Circle(x,y,r);

       { задержка }
       Delay(dt);

       { стереть окружность }
       SetColor(0);
       Circle(x,y,r);

       { изменить положение центра окружности }
       x:=x+dx;
    end;
 write('Для завершения работы нажмите <Enter>');;
 CloseGraph;
end.

Leave a Comment

61 − 57 =