Нарисовать рисунок - Pascal ABC (12921)
Формулировка задачи:
Помогите нарисовать рисунок.Самая проблема нарисовать 2 круг со штриховкой
Решение задачи: «Нарисовать рисунок»
textual
Листинг программы
- uses graphABC;
- type Point=record
- x,y:integer;
- end;
- var c,r,x,y,r1:integer;
- p:array[1..5] of Point;
- begin
- setwindowsize(400,400);
- c:=200;
- r:=180;
- circle(c,c,r);
- setbrushstyle(bsBDiagonal);
- setbrushcolor(clBlack);
- r:=r-20;
- circle(c,c,r);
- p[1].x:=c-r;p[1].y:=c;
- p[2].x:=c;p[2].y:=c-r;
- p[3].x:=c+r;p[3].y:=c;
- p[4].x:=c;p[4].y:=c+r;
- p[5]:=p[1];
- setbrushstyle(bsSolid);
- setbrushcolor(clWhite);
- polygon(p,5);
- r:=r-20;
- p[1].x:=c-r;p[1].y:=c;
- p[2].x:=c;p[2].y:=c-r;
- p[3].x:=c+r;p[3].y:=c;
- p[4].x:=c;p[4].y:=c+r;
- p[5]:=p[1];
- polygon(p,5);
- r1:=r div 2;
- setbrushcolor(clBlack);
- rectangle(c-r1,c-r1,c+r1,c+r1);
- r1:=round(r*sin(pi/4));
- setpencolor(clGray);
- x:=(p[1].x+p[4].x) div 2;
- y:=(p[1].y+p[4].y) div 2;
- arc(x,y,r1,-45,135);
- x:=(p[2].x+p[3].x) div 2;
- y:=(p[2].y+p[3].y) div 2;
- arc(x,y,r1,135,315);
- x:=(p[1].x+p[2].x) div 2;
- y:=(p[1].y+p[2].y) div 2;
- arc(x,y,r1,-135,45);
- x:=(p[3].x+p[4].x) div 2;
- y:=(p[3].y+p[4].y) div 2;
- arc(x,y,r1,45,225);
- floodfill(c,c+10,clWhite);
- floodfill(c-10,c,clWhite);
- floodfill(c,c-10,clWhite);
- floodfill(c+10,c,clWhite);
- end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д