Программа для создания изображения - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Написать программу которая создает данное изображение

Решение задачи: «Программа для создания изображения»

textual
Листинг программы
uses graphABC;
type point=record
           x,y:integer;
           end;
var x,y,a,b:integer;
    p:array[1..8] of point;
begin
x:=windowwidth div 2;{центр эллипсов}
y:=windowheight div 3;
b:=y-20; {радиусы большого эллирса}
a:=3*b div 2;
{рисуем стрелу как полигон}
p[1].x:=x-20;p[1].y:=y+b;
p[2].x:=x+20;p[2].y:=p[1].y;
p[3].x:=p[2].x;p[3].y:=p[2].y+b;
p[4].x:=p[3].x+30;p[4].y:=p[3].y;
p[5].x:=x;p[5].y:=p[4].y+30;
p[6].x:=p[1].x-30;p[6].y:=p[3].y;
p[7].x:=p[1].x;p[7].y:=p[3].y;
p[8]:=p[1];
setbrushstyle(bsCross);{штриховка клетками, нет там точками}
setbrushcolor(clBlack);
polygon(p,8);{залитый полигон}
setbrushstyle(bsBDiagonal);{штриховка символами /}
ellipse(x-a,y-b,x+a,y+b);{внешний эллипс}
b:=b-20;{радиусы следующего эллипса}
a:=a-20;
setbrushstyle(bsSolid);{заливаем белым цветом}
setbrushcolor(clWhite);
ellipse(x-a,y-b,x+a,y+b);
a:=50;{радиусы рожицы}
b:=40;
ellipse(x-a,y-b,x+a,y+b);{рисуем эллипс}
circle(x-20,y-10,5); {рисуем глаза}
circle(x+20,y-10,5);
arc(x,y-b,3*b div 2,240,300);{рисуем рот}
end.

Объяснение кода листинга программы

  1. Создается тип данных point, который представляет точку с координатами x и y.
  2. Объявляются переменные x, y, a и b для хранения значений координат.
  3. Создается массив p размером 8, который будет хранить точки.
  4. Задаются начальные значения координат для всех точек.
  5. Рисуется полигон, используя массив точек.
  6. Задаются новые значения координат для внешнего эллипса.
  7. Рисуется внешний эллипс.
  8. Задаются новые значения координат для рожицы.
  9. Рисуется рожица.
  10. Рисуется глаз.
  11. Рисуется второй глаз.
  12. Рисуется рот.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы