Нарисовать паркет с помощью процедуры - Pascal ABC

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

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

Нарисовать паркет с помощью процедуры

Решение задачи: «Нарисовать паркет с помощью процедуры»

textual
Листинг программы
uses GraphABC;
type point=record
           x,y:integer;
           end;
procedure plitk(x,y,r:integer);
var p:array[1..9]of point;
    a,da:real;
    i:byte;
begin
a:=pi/2;
da:=pi/4;
for i:=1 to 9 do
 begin
  p[i].x:=x+round(r*cos(a));
  p[i].y:=y-round(r*sin(a));
  a:=a+da;
 end;
polygon(p,9);
end;
var r,i,j,x,y,d:integer;
begin
r:=20;
y:=r;
while y<=windowheight do
 begin
  x:=r;
  while x<=windowwidth do
   begin
    plitk(x,y,r);
    x:=x+2*r;
   end;
  y:=y+2*r
 end;
end.

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

  1. В начале кода подключается библиотека GraphABC.
  2. Создается тип данных point, представляющий точку с координатами x и y.
  3. Определяется процедура plitk, которая принимает три аргумента: x, y и r. Эта процедура рисует полигон с помощью функции polygon из библиотеки GraphABC.
  4. Создается переменная p, которая представляет собой массив из 9 точек.
  5. Вычисляются значения a и da - углы, используемые для расчета координат точек.
  6. Запускается цикл, который рисует полигон, начиная с точки (x, y) и увеличивая x и y на r с каждой итерацией.
  7. В цикле while выполняется до тех пор, пока y меньше или равно высоте окна.
  8. В цикле while выполняется до тех пор, пока x меньше или равно ширине окна.
  9. В каждой итерации цикла while вызывается процедура plitk с текущими значениями x и y и значением r, увеличенным в два раза.
  10. После завершения цикла while значение y увеличивается в два раза.
  11. Код завершается.

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


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

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

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