Написать программу, выводящую на экран случайным образом движущиеся прямоугольники - 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
не выполняется.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д