Помогите в PASCAL ABC написать программу рисования этой картинки

1
интересная картинка)
но сложная :с
Откуда вообще такое задание? В школе вряд ли такое задают.
я не знаюююю...

Ответы и объяснения

  • Segrif
  • почетный грамотей
2013-12-07T19:56:07+00:00
Когда писал изначально, лапы были не из дуг, а из прямых, но потом мне помог один очень хороший человек (благодарности пользователю Amillia25), так что выкладываю конечный вариант.

Чтобы поменять размер изображения, измените значение константы n. Чтобы добавить сетку, уберите фигурные скобки.

uses graphabc;
{var i: integer;}
const n=30; w=16; h=15;
begin
setwindowsize(w*n,h*n);
setpencolor(clgray);
{for i:=0 to w do line(i*n,0,i*n,h*n);
for i:=0 to h do line(0,i*n,w*n,i*n);}
setpencolor(clblack);
setbrushcolor(clwhite);
arc(n*3,n*11-n div 4,n*3+n div 4,-158,-22);
line(0,n*12,n*2,n*12);
line(n*3,n*12,n*6,n*12);
arc(n*2+n div 2,n*12,n div 2,180,0);
circle(n*4-n div 4,n*13,n div 4);
circle(n*3-n div 8,n*13+n div 2,n div 8);
arc(n*12,3*n,n*3, 270, 180);
arc(n*12,3*n,n,270,180);
setbrushcolor(clblack);
circle(n*12,3*n,n div 15);
arc(n*6,n*2-n div 4,n*3+n div 4,-90,-18);
circle(n*9,4*n,n div 10);
line(n*6,n*5,n*8,n*6);
line(n*8,n*6,n*9,n*6);
arc(n*9,n*5,n,270,0);
line(n*9,n*6,n*9,n*8);
arc(21*n div 2, n*10, 5*n div 2, 127, 180);
line(n*8,n*10,n*9,n*9);
line(n*9,n*9,n*9,n*12);
line(n*9,n*12,n*8,n*12);
arc(11*n div 2+2, n*12, 5*n div 2, -53, 0);
line(n*7,n*14,n*7,n*15);
arc(n*7,n*13,n*2,270,0);
line(n*9,n*13,n*11,n*13);
arc (13*n, 23*n div 2, 5*n div 2, -142,-89);
line(n*13,n*14,n*13,n*15);
line(n*13,n*15,n*14,n*13);
line(n*14,n*13,n*12,n*13);
line(n*12,n*13,n*13,n*12);
line(n*13,n*12,n*13,n*10);
line(n*13,n*10,n*12,n*6);
line(n*13,n*12,n*15,n*11);
line(n*15,n*11,n*16,n*6);
end.