Создать программу, в которой треугольник движется по периметру экрана - PascalABC.NET

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

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

Создать программу, в которой треугольник движется по периметру экрана

Решение задачи: «Создать программу, в которой треугольник движется по периметру экрана»

textual
Листинг программы
  1. uses graphABC;
  2. const w=400;//размеры окна
  3.       r=20;//радиус окружности, описанной около треугольника
  4.       z=1;//задержка
  5.       d=1;//шаг смещения треугольника
  6. var f:boolean;//переменная для останова программы
  7. procedure trg(x,y:integer);
  8. var u:real;
  9.    
  10. begin
  11. setpencolor(clRed);
  12. setpenwidth(2);
  13. u:=pi/2;
  14. moveto(x+round(r*cos(u)),y-round(r*sin(u)));
  15. u:=u+2*pi/3;
  16. lineto(x+round(r*cos(u)),y-round(r*sin(u)));
  17. u:=u+2*pi/3;
  18. lineto(x+round(r*cos(u)),y-round(r*sin(u)));
  19. u:=u+2*pi/3;
  20. lineto(x+round(r*cos(u)),y-round(r*sin(u)));
  21. end;    
  22. procedure MouseDown(x,y,mousebutton: integer);
  23. begin
  24. if mousebutton=1 then f:=false;//если ЛКМ остановка
  25. end;
  26. var x,y:integer;
  27. begin
  28. setwindowsize(w,w);
  29. centerwindow;
  30. f:=true;
  31. onmousedown:=MouseDown;
  32. x:=r;
  33. y:=r;
  34. lockdrawing;
  35. while f do
  36.  begin
  37.   clearwindow;
  38.   trg(x,y);
  39.   sleep(1);
  40.   if (x<w-r)and(y<=r) then x:=x+1
  41.   else if (y<w-r)and(x>=w-r) then y:=y+1
  42.   else if(x>r)and(y>=w-r) then x:=x-d
  43.   else if (y>r)and(x<=w-r) then y:=y-d;
  44.   redraw;
  45.  end;
  46. end.

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


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

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

6   голосов , оценка 3.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы