Заполнить экран случайно расположенными правильными треугольниками разных размеров. Цвет, стиль и толщина линий каждого треугольника должны изменяться случайно — Pascal(Паскаль)

uses crt,graph;
type Tpoint=record//тип точка
            x,y:integer;
            end;
procedure Treug(x0,y0:integer);//рисование треугольника
var x1,y1,d,a,i:integer;
    p:array[1..4] of Tpoint;//массив точек 3+1 для замыкания
begin
d:=random(200)+10;//радиус описанной окружности
x1:=random(x0-2*d)+d;//координаты центра с учетом чтобы треугольник попал на экран
y1:=random(y0-2*d)+d;
a:=random(360);//начальный угол
for i:=1 to 3 do//координаты вершин правильного треугольника
  begin
   p[i].x:=x1+round(d*cos(a*pi/180));
   p[i].y:=y1-round(d*sin(a*pi/180));
   a:=a+120;
  end;
p[4].x:=p[1].x;//замыкание
p[4].y:=p[1].y;
MoveTo(p[1].x,p[1].y);//в первую точку
SetColor(random(14)+1);//случайный цвет
Setlinestyle(random(4),0,random(3)+1);//случайный стиль
for i:=1 to 4 do
LineTo(p[i].x,p[i].y);//соединяем линиями вершины
end;
var  x,y,n,i:integer;
begin
clrscr;
write('Kolichestvo treugolnikov n=');
readln(n);
InitGraph(x,y,'');
x:=getmaxX;y:=getmaxY;//размеры экрана
for i:=1 to n do
Treug(x,y);
readln
end.

Leave a Comment

76 − 70 =