Нарисовать кота и цветок - Pascal ABC
Формулировка задачи:
Напишите программу с рисунком в Pascal ABC любым из 2 задания.
Решение задачи: «Нарисовать кота и цветок»
textual
Листинг программы
uses graphABC; const n=27; m=22; type point=record x,y:integer; end; var c,d,i:integer; p:array[1..4]of point; begin d:=20; setwindowsize(n*d,m*d); centerwindow; setpencolor(clOlive); for i:=1 to n do begin if i<=m then line(0,(i-1)*d,n*d,(i-1)*d); line((i-1)*d,0,(i-1)*d,n*d); end; setpencolor(clGray); setbrushcolor(clGray); for i:=1 to 3 do rectangle((5-i)*d,(15+i)*d,(n-5+i)*d,(16+i)*d); c:=7*d; for i:=1 to 5 do begin rectangle(c,8*d,c+d,16*d); c:=c+3*d; end; setpencolor(clBlack); setbrushcolor(clBlack); c:=7*d+d div 2; for i:=1 to 5 do begin ellipse(c-d,8*d,c+d,9*d); c:=c+3*d; end; setpencolor(clMedGray); setbrushcolor(clMedGray); p[1].x:=4*d; p[1].y:=8*d; p[2].x:=27*d div 2; p[2].y:=3*d; p[3].x:=23*d; p[3].y:=8*d; p[4]:=p[1]; polygon(p,4); setpencolor(clGray); setbrushcolor(clGray); p[1].x:=7*d; p[1].y:=7*d; p[2].x:=27*d div 2; p[2].y:=4*d; p[3].x:=20*d; p[3].y:=7*d; p[4]:=p[1]; polygon(p,4); setpencolor(clBlack); setbrushcolor(clBlack); circle(27*d div 2,11*d div 2,d); end.
Объяснение кода листинга программы
- Используется библиотека graphABC.
- Задаются константы n и m.
- Создается тип point, представляющий точку с координатами x и y.
- Создается переменная c, равная 20 d.
- Создается переменная d, равная 20.
- Создается массив p, состоящий из 4 точек.
- Устанавливается размер окна на n*d, где n - 27, а d - 20.
- Устанавливается цвет пера на clOlive.
- Запускается цикл for, который выполняется n раз.
- В каждой итерации цикла проверяется условие i <= m. Если оно истинно, то рисуется линия от (0,(i-1)d) до (nd,(i-1)*d).
- Затем рисуется линия от ((i-1)d,0) до ((i-1)d,n*d).
- Устанавливается цвет пера на clGray.
- Запускается цикл for, который выполняется 3 раза.
- В каждой итерации цикла рисуется прямоугольник с размерами (5-i)d, (15+i)d, (n-5+i)d, (16+i)d.
- Затем устанавливается цвет пера на clBlack.
- Запускается цикл for, который выполняется 5 раз.
- В каждой итерации цикла рисуется эллипс с центром в точке c-d, диаметром d, и радиусом d.
- Затем устанавливается цвет пера на clMedGray.
- Запускается цикл for, который выполняется 4 раза.
- В каждой итерации цикла копируется точка из массива p в переменную c.
- Рисуется полигон с четырьмя вершинами, представленными точками из массива p.
- Устанавливается цвет пера на clGray.
- Запускается цикл for, который выполняется 4 раза.
- В каждой итерации цикла копируется точка из массива p в переменную c.
- Рисуется полигон с четырьмя вершинами, представленными точками из массива p.
- Устанавливается цвет пера на clBlack.
- Запускается цикл for, который выполняется 1 раз.
- В каждой итерации цикла рисуется окружность с центром в точке (27d div 2,11d div 2) и радиусом d.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д