USES Graph; {подключен модуль Graph} VAR x,y,h:integer;
PROCEDURE GrInit; {процедура инициализации режима графики} VAR GraphDriver: Integer; {для графического адаптера} GraphMode : Integer; {для графического режима} ErrorCode : Integer; {для кода ошибки} BEGIN GraphDriver :=Detect; {режим автоопределения} InitGraph(GraphDriver ,GraphMode,''); {инициализация} ErrorCode :=GraphResult; {результат инициализации} if ErrorCode <> grOk then {если не успешно,то...} begin Writeln('Ошибка графики:',GraphErrorMsg(ErrorCode )); Writeln('Программа остановлена.'); Halt(1) end {if} END;
BEGIN GrInit; {вызов инициализации} x:=GetMaxX div 2; y:=GetMaxY div 2; h:= 30; {кол-во шагов до финиша} while x+y>0 do begin ClearDevice; Circle(x, y, 10); Delay(100); x:= x + GetMaxX div h; y:= y - GetMaxy div h; end; Readln; {пауза до нажатия } CloseGraph; {закрытие графического режима} END.
USES Graph; {подключен модуль Graph}
VAR x,y,h:integer;
PROCEDURE GrInit; {процедура инициализации режима графики}
VAR
GraphDriver: Integer; {для графического адаптера}
GraphMode : Integer; {для графического режима}
ErrorCode : Integer; {для кода ошибки}
BEGIN
GraphDriver :=Detect; {режим автоопределения}
InitGraph(GraphDriver ,GraphMode,''); {инициализация}
ErrorCode :=GraphResult; {результат инициализации}
if ErrorCode <> grOk then {если не успешно,то...}
begin
Writeln('Ошибка графики:',GraphErrorMsg(ErrorCode ));
Writeln('Программа остановлена.');
Halt(1)
end {if}
END;
BEGIN
GrInit; {вызов инициализации}
x:=GetMaxX div 2;
y:=GetMaxY div 2;
h:= 30; {кол-во шагов до финиша}
while x+y>0 do
begin
ClearDevice;
Circle(x, y, 10);
Delay(100);
x:= x + GetMaxX div h;
y:= y - GetMaxy div h;
end;
Readln; {пауза до нажатия }
CloseGraph; {закрытие графического режима}
END.