Ваша вторая программа - "Квадраты"
Квадраты
Строится прямоугольник. Каждая его сторона делится в заданном отношении, задавая таким образом новую вершину. Затем на вновь полученных вершинах строится новый четырехугольник.
program kvadr;
uses crt,graph;
const n=10;
var l:word;
procedure new(x1,y1,x2,y2:integer;var xl,yl:integer);
{ Вычисление новой координаты вершины }
begin
xl:=(x1+(n-1)*x2) div n;
yl:=(y1+(n-1)*y2) div n;
end;
{ Процедура построения четырехугольника }
procedure postroit(x1,y1,x2,y2,x3,y3,x4,y4:integer);
var l1,k1,l2,k2,l3,k3,l4,k4:integer;
label qv;
begin
setcolor(l);
line(x1,y1,x2,y2);
line(x2,y2,x3,y3);
line(x3,y3,x4,y4);
line(x4,y4,x1,y1);
if abs(x2-x1)<0.001 then goto qv; { Проверка окончания
построения }
new(x1,y1,x2,y2,l1,k1);
new(x2,y2,x3,y3,l2,k2);
new(x3,y3,x4,y4,l3,k3);
new(x4,y4,x1,y1,l4,k4);
delay(70);
postroit(l1,k1,l2,k2,l3,k3,l4,k4);
qv:
end;
var k,dr,md:integer;
x1,x2,x3,x4,y1,y2,y3,y4:integer;
begin
l:=10;
x1:=120;y1:=40;
x2:=520;y2:=40;
x3:=520;y3:=440;
x4:=120;y4:=440;
dr:=9;md:=2;
initgraph(dr,md,'');
setbkcolor(1);
postroit(x1,y1,x2,y2,x3,y3,x4,y4);
readln;
closegraph;
end.
Вот и все.
Сайт создан в системе uCoz