Помогите, пожалуйста.
Код: Выделить всё
uses
graphabc;
var
cx: integer := WindowCenter.X;
cy: integer := WindowCenter.Y;
procedure ornament(n, r, h: integer);
begin
var a := pi / 2;
var x := (r + h * (n - 1)) * sqrt(3);
var y := (r + h * (n - 1)) * 1.5;
var d := r;
for var j := -2 to 2 do
for var k := -2 to 2 do
begin
r := d;
for var i := 1 to n do
begin
var arr: array of Point := (
new point(trunc(cx + j * x + r * cos(a)), trunc(cy + k * y - r * sin(a))),
new point(trunc(cx + j * x + r * cos(a + 2 * pi / 3)), trunc(cy + k * y - r * sin(a + 2 * pi / 3))),
new point(trunc(cx + j * x + r * cos(a + 4 * pi / 3)), trunc(cy + k * y - r * sin(a + 4 * pi / 3))));
Setpencolor(clRandom);
Setbrushstyle(bsClear);
Polygon(arr);
r := r + h;
end;
end;
end;
var
n, r, h: integer;
begin
n := 5;
r := 20;
h := 10;
ornament(n, r, h);
end.