Смекни!
smekni.com

Редактирование и отладка программ с помощью Pascal (стр. 12 из 12)

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.