uses graph,crt;
var gd, gm, x, y, r,xl,yl,x2,y2: integer; xa,ya:word;
begin
writeln('введи координаты центра окружности и радиус’);
readln (х,у,г);
gd:=0; gm:=0; initgraph (gd, gm, ‘ ‘);
setcolor(3); circle(x, y, r);
getaspectratio(xa,ya);
x1:=x-r; yl:=round(у-r*(xa/ya));
x2:=x+r; y2:=round(y+r*(xa/ya));
rectangle(x1,y1,x2,y2);
floodfill(x1+1,y1+1,3);
floodfill(x2-1,y1+1,3);
floodfill(x1+1,y2-1,3);
floodfill(x2-1,y2-1,3);
while not keypressed do;
closegraph
end.
Задание13. Вывести точечным шрифтом горизонтально, начиная с точки (100,20), сообщение "horisontal (горизонтально)" и прямым шрифтом вывести вертикально сообщение "vertical (вертикально)", начиная с точки (5,10)
program пример;
{ графика и текст}
uses graph,crt;
var gd,gm: integer;
begin
gd:=0; gm:=0; initgraph(gd,gm, ‘ ‘);
outtextxy(100,20, ‘horisontal (горизонтально)’);
settextstyle(0,1,1);
outtextxy (50,10, ‘vertical (вертикально)’);
while not keypressed do;
end;
Задание14. Изобразить треугольник, вращающийся вокруг одной из вершин
program пример;
{ вращение треугольника вокруг одной вершины}
uses graph,crt;
var
gd,gm,I,xc,yc,x1,y1,x2,y2,x1n,x2n,y1n,y2n:integer;
xa,ya:word; t: real;
begin
gd:=9; gm:=2; initgraph (gd, gm, ‘ ‘);
getaspectratio(xa,ya);
xc:=300; yc:=100; t:=0; x1:=400; y1:=10; x2:=500;
y2:=100;
for i:=0 to 360 do
begin
t:=t+pi/180;
xln:=round (xc+ (xl-xc) *cos (t)+(yl-yc)*sin(t) *ya/xa);
у1n:=round (yc+ (yl-yc) *cos (t) - (xl-xc)*sin(t) *xa/ya);
x2n:=round (xc+(x2-xc) *cos(t)+(y2-yc)*sin(t) *ya/xa);
y2n: =round (yc+ (y2-yc) *cos (t) + (x2-xc)*sin(t) *xa/ya);
setcolor (15);
line (xc,yc, xln, yln); line (xln,yln,x2n,y2n);
line (x2n,y2n,xc,yc); delay(20);
setcolor(0);
line(xc,yc,xln,yln); line (xln,yln,x2n,y2n);
Iine(x2n,y2n,xc,yc); delay(20);
end; while not keypressed do;
closegraph
end.
Задание15. Изобразить движение шара(точнее круга)по горизонтали
program пример;
{ движение шара по горизонтали}
uses qraph,crt;
var gd,gm,i: integer; p:pointer; s:word;
begin;
gd:=0; gm:=0; initgraph (gd, gm, ‘ ‘);
{ рисуем шар}
for i:=l to 10 do circle (20, 30, i);
{ выделяем память}
s:=imagesize(9, 20,30, 40); getmem(p,s);
{ запоминаем рисунок}
getimage(9, 20, 30, 40,p^); cleardevice;
{ изображаем полет шара }
for i:=l to 600 do
begin putimage(10+i, 100,p^,0); delay(10); end;
while not keypressed do;
end.