Написать программу, выводящую на экран случайным образом движущиеся прямоугольники - Pascal ABC
Формулировка задачи:
Написать программу, выводящую на экран случайным образом движущиеся прямоугольники
Нужна ваша помощь.
22 просмотра и ни одного ответа....
Решение задачи: «Написать программу, выводящую на экран случайным образом движущиеся прямоугольники»
textual
Листинг программы
uses GraphABC; type rect=record x,y,a,b,cv,dx,dy:integer; end; const n=10; var a:array[1..n] of rect; i:byte; begin randomize; for i:=1 to n do with a[i] do begin a:=10+random(20); b:=10+random(20); x:=a+random(windowwidth-2*a); y:=b+random(windowheight-2*b); cv:=clrandom; dx:=1+random(5); dy:=1+random(5); end; lockdrawing; repeat clearwindow; for i:=1 to n do with a[i] do begin setpencolor(cv); setbrushcolor(cv); rectangle(x-a,y-b,x+a,y+b); end; sleep(10); for i:=1 to n do with a[i] do begin if (x+a>windowwidth)or(x-a<0) then dx:=-dx; if (y+b>windowheight)or(y-b<0) then dy:=-dy; x:=x+dx; y:=y+dy; end; redraw; until false; end.
Объяснение кода листинга программы
- В начале кода используется библиотека GraphABC, которая предоставляет функции для работы с графиками в Pascal.
- Создается тип
rect
, который представляет прямоугольник с координатами x, y, a и b, а также с переменными cv, dx и dy, которые используются для установки цвета, толщины и координат прямоугольника. - Создается переменная
n
, которая определяет количество прямоугольников, которые нужно создать. - Создается массив
a
типаrect
, который будет содержать все прямоугольники. - Задаются начальные значения для переменных x, y, a, b, cv, dx и dy.
- Запускается цикл, в котором для каждого прямоугольника в массиве
a
вычисляются новые координаты x и y, а также устанавливается цвет и толщина прямоугольника. - После этого происходит отрисовка прямоугольника на экране.
- Затем выполняется цикл, в котором обновляются координаты x и y для каждого прямоугольника. Если прямоугольник выходит за пределы окна, то его координаты x и y меняются на противоположные.
- После окончания цикла выполняется функция
redraw
, которая обновляет графическое представление всех прямоугольников. - Код завершается, когда условие
false
не выполняется.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д