| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- Uses Graph,Crt;
- Type
- PolyPoints = record
- x,y : Integer;
- End;
- UserRec = array[1..4] of PointType;
- Var
- mas : UserRec;
- k,j,l,o,d,r : integer;
- Procedure RecTreug(Koor : UserRec;color : word);FAR;
- Const
- n=4;
- Var
- i : integer;
- Begin
- SetFillStyle(10,10); { \ Прорисо}
- SetColor(color); { | вка пер}
- { | вого }
- DrawPoly(n,koor); { | }
- FloodFill(koor[1].x,koor[1].y+10,10); { / тругольника}
- SetColor(13);
- Circle(koor[2].x,koor[2].y,abs((k-l))div 20);
- SetFillStyle(1,13); { Рисование Левого кружка}
- FloodFill(koor[2].x-1,koor[2].y,13);
- SetColor(12);
- Circle(Koor[3].x,Koor[3].y,(abs(k-l))div 20);
- SetFillStyle(1,12); { Рисование Правого кружка}
- FloodFill(koor[3].x-1,koor[3].y,12);
- For i:=1 to 2 do
- Begin
- SetColor(10);
- SetFillStyle(10,10);
- koor[1].y:=koor[2].y;
- koor[2].y:=koor[2].y+mas[2].y-j; {Вычисление вершин следуюшего }
- koor[3].y:=koor[2].y; { треугольника}
- koor[4].y:=koor[1].y;
- DrawPoly(n,koor); { Его прорисовка и закрашивание}
- FloodFill(koor[1].x,koor[1].y+10,10);
- SetColor(13);
- Circle(koor[2].x,koor[2].y,abs((k-l))div 20);
- SetFillStyle(1,13);
- FloodFill(koor[2].x-1,koor[2].y,13);
- SetColor(12); {Кружки Однако}
- Circle(Koor[3].x,Koor[3].y,(abs(k-l))div 20);
- SetFillStyle(1,12);
- FloodFill(koor[3].x-1,koor[3].y,12);
- End;
- SetColor(6);
- Rectangle(mas[1].x-((l-k)div 8),koor[3].y+1,mas[1].x+((l-k)div 8),koor[3].y+((mas[3].y-mas[1].y)div 5));
- SetFillStyle(11,6); { Прорисока нижнего коричневого}
- FloodFill(mas[1].x,koor[3].y+4,6); { прямоугольника }
- End;
- Procedure RectElka(x,y,xx,yy : Integer);
- Begin
- mas[1].x:=((x+xx)div 2);
- mas[4].x:=mas[1].x;
- mas[2].x:=x;mas[3].x:=xx; { Вычисления вершин тр-ка видимо}
- mas[1].y:=y;mas[2].y:=((yy+y)div 4);mas[3].y:=mas[2].y;
- mas[4].y:=mas[1].y;
- RecTreug(mas,10);
- End;
- Begin
- Readln(k,j,l,o);
- r:=2;
- d:=detect;
- InitGraph(d,r,'');
- If GraphReSult=GrOK then rectelka(k,j,l,o);
- Readkey;
- CloseGraph;
- End.
|