Turbo Pascal для начинающих




Задача 215


{ Координатные оси и оцифрованная сетка } program grid; uses Graph;
var
xO,yO:integer; { координаты начала координатных осей } dx,dy:integer; { шаг координатной сетки (в пикселах) ) h,w:integer; { высота и ширина области вывода координатной
сетки > х,у:integer;
lx,ly:real; ( метки (оцифровка) линий сетки по X Y } dlx, dly:real; { шаг меток (оцифровки) линий сетки по X и Y } st:string; { изображение метки линии сетки }
grDriver: Integer; grMode: Integer; ErrCode: Integer;
begin
grDriver := VGA;
grMode:=VGAHi;
InitGraph(grDriver, grMode,'e:\tp\bgi');
ErrCode := GraphResult;
if ErrCode <> grOk then Halt(1);x0:=50; yO:=45O; ( оси начинаются в точке (40,450) } dx:=40; dy:=40; ( шаг координатной сетки 40 пикселей } dlx:=0.5; { шаг меток оси X, метками будут:=l;
шаг меток оси Y, метками будут: 1, 2, и т.д. }
h: =300;
w: =400;
lx :=0;
iy :=0;
{ начало координат помечается метками 0 )Line(x0,y0,x0,y0-h); { ось X } Line(x0,y0,x0+w,y0); { ось Y }
{ засечки, сетка и оцифровка по оси X }
х:=х0;
repeat
{ засечка }
SetLineStyle(SolidLn, 0, NormWidth);
Line(x,yO-3,x,yO+3);
{ оцифровка }
Str(lx:0:l,st);
OutTextXY(x-8,yO+5,st);
lx:=lx+dlx;
{ линия сетки }
SetLineStyle(DottedLn, 0, NormWidth);
Line(x,yO-3,x,yO-h);
x:=x+dx; until (x>x0+w);
{ засечки, сетка и оцифровка по оси Y }
у:=у0;
repeat
{ засечка }
SetLineStyle(SolidLn, 0, NormWidth);
Line(xO-3,y,xO+3,y);
( оцифровка }
Str(ly:0:l,st);
OutTextXY(xO-40,y,st);
ly:=ly+dly;
{ линия сетки }
SetLineStyle(DottedLn, 0, NormWidth);
Line(x0+3,y,xO+w,y);
SetLineStyle(SolidLn, 0, NormWidth); y:=y-dy; until (y<yO-h);
Readln; CloseGraph;
end.









Начало    Назад    Вперед




Книжный магазин