Нарисовать слона - Pascal ABC (13174)
Формулировка задачи:
Нужно нарисовать вот такую фигуру и при этом ещё реализовать алгоритм, позволяющий при нажатии клавиш увеличивать и уменьшать изображение. Помогите, пожалуйста.
Решение задачи: «Нарисовать слона»
textual
Листинг программы
uses graphABC; var i,d:integer; begin setwindowsize(540,460); centerwindow; d:=20; for i:=0 to 28 do begin line(0,i*d,540,i*d); line(i*d,0,i*d,460); end; setpenwidth(3); moveto(d,13*d); lineto(3*d,11*d); lineto(4*d,8*d); lineto(7*d,6*d); lineto(11*d,5*d); lineto(15*d,2*d); lineto(17*d,3*d); lineto(21*d,3*d); lineto(23*d,2*d); lineto(25*d,4*d); lineto(25*d,8*d); lineto(22*d,10*d); lineto(21*d,8*d); lineto(21*d,12*d); lineto(20*d,13*d); lineto(17*d,13*d); lineto(17*d,12*d); lineto(19*d,12*d); lineto(20*d,11*d); lineto(18*d,9*d); lineto(17*d,9*d); lineto(16*d,8*d); lineto(15*d,10*d); lineto(12*d,8*d); lineto(11*d,5*d); moveto(d,13*d); lineto(4*d,11*d); lineto(5*d,14*d); lineto(4*d,18*d); lineto(7*d,18*d); lineto(7*d,17*d); lineto(8*d,17*d); lineto(7*d,13*d); lineto(12*d,13*d); lineto(12*d,19*d); lineto(15*d,19*d); lineto(15*d,14*d); lineto(16*d,14*d); lineto(16*d,15*d); lineto(15*d,17*d); lineto(17*d,19*d); lineto(19*d,15*d); lineto(19*d,13*d); setbrushcolor(clBlack); circle(17*d,6*d,d div 2); circle(21*d,6*d,d div 2); end.
Объяснение кода листинга программы
- Используется библиотека graphABC.
- Переменная i и d имеют тип integer.
- Устанавливается размер окна с помощью функции setwindowsize.
- Центр окна выравнивается с помощью функции centerwindow.
- Вычисляется значение переменной d как 20.
- Запускается цикл for, который выполняется 28 раз.
- В каждой итерации цикла рисуется линия с помощью функции line.
- Задаются координаты точек для рисования линий.
- Устанавливается ширина пера с помощью функции setpenwidth.
- Вычисляется координата центра круга с помощью функций moveto и lineto.
- Рисуются два круга с помощью функции circle.
- Устанавливается цвет кисти на черный с помощью функции setbrushcolor.
- Координаты центров кругов вычисляются как среднее арифметическое координат точек, которые определяют контур слона.
- Окружности рисуются с помощью функции circle.
- Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д