Создать рисунок, сделать анимацию - Pascal

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

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

Нарисовать стакан с мороженым, и сделать анимацию(замена цвета шариков)

Решение задачи: «Создать рисунок, сделать анимацию»

textual
Листинг программы
uses crt,graph;
type Point=record
           x,y:integer;
           end;
var gd,gm,c,i:integer;
    p:array[1..12] of Point;
begin
clrscr;
randomize;
gd:=detect;
initgraph(gd,gm,'');
repeat
setcolor(10);
circle(340,105,50);
Setfillstyle(1,10);
fillellipse(340,105,50,50);
setcolor(12);
circle(290,170,50);
Setfillstyle(1,12);
fillellipse(290,170,50,50);
setcolor(13);
circle(390,190,50);
Setfillstyle(1,13);
fillellipse(390,190,50,50);
p[1].x:=240;p[1].y:=190;
p[2].x:=440;p[2].y:=190;
p[3].x:=440;p[3].y:=240;
p[4].x:=345;p[4].y:=265;
p[5].x:=345;p[5].y:=365;
p[6].x:=440;p[6].y:=390;
p[7].x:=240;p[7].y:=390;
p[8].x:=335;p[8].y:=365;
p[9].x:=335;p[9].y:=265;
p[10].x:=240;p[10].y:=240;
p[11].x:=p[1].x;p[11].y:=p[1].y;
setcolor(11);
moveto(p[1].x,p[1].y);
for i:=1 to 11 do
lineto(p[i].x,p[i].y);
Setfillstyle(1,11);
fillpoly(11,p);
delay(2000);
 
setcolor(14);
circle(340,105,50);
Setfillstyle(1,14);
fillellipse(340,105,50,50);
setcolor(3);
circle(290,170,50);
Setfillstyle(1,3);
fillellipse(290,170,50,50);
setcolor(9);
circle(390,190,50);
Setfillstyle(1,9);
fillellipse(390,190,50,50);
p[1].x:=240;p[1].y:=190;
p[2].x:=440;p[2].y:=190;
p[3].x:=440;p[3].y:=240;
p[4].x:=345;p[4].y:=265;
p[5].x:=345;p[5].y:=365;
p[6].x:=440;p[6].y:=390;
p[7].x:=240;p[7].y:=390;
p[8].x:=335;p[8].y:=365;
p[9].x:=335;p[9].y:=265;
p[10].x:=240;p[10].y:=240;
p[11].x:=p[1].x;p[11].y:=p[1].y;
setcolor(11);
moveto(p[1].x,p[1].y);
for i:=1 to 11 do
lineto(p[i].x,p[i].y);
Setfillstyle(1,11);
fillpoly(11,p);
delay(2000);
until keypressed;
closegraph
end.

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

  1. Используется библиотека crt для создания консольного окна и графического интерфейса.
  2. Создается тип данных Point, который представляет точку с координатами x и y.
  3. Создается переменная gd, которая представляет детектор экрана.
  4. Создается переменная gm, которая представляет графический модуль.
  5. Создается переменная c, которая представляет цвет фона.
  6. Создается переменная i, которая представляет номер точки.
  7. Создается массив p, который содержит 12 точек.
  8. В цикле повторяется следующий код:
    • Выбирается случайный цвет для заполнения эллипса.
    • Вычисляется координаты центра эллипса.
    • Заполняется эллипс.
    • Устанавливается цвет для следующей точки.
    • Устанавливается координаты следующей точки.
    • Если ключ нажата, то цикл прерывается.
  9. Код завершается после нажатия ключа.
  10. Графический модуль и консольное окно закрываются.

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


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

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

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