Нарисовать букву Р - Pascal ABC
Формулировка задачи:
Вот такую
Решение задачи: «Нарисовать букву Р»
textual
Листинг программы
- uses graphABC;
- var i,d:integer;
- begin
- setwindowsize(420,420);
- centerwindow;
- d:=50;
- for i:=1 to 9 do
- begin
- line(10,10+(i-1)*d,410,10+(i-1)*d);
- line(10+(i-1)*d,10,10+(i-1)*d,410);
- end;
- setbrushcolor(clRed);
- for i:=1 to 6 do
- rectangle(10+d,10+i*d,10+2*d,10+(i+1)*d);
- for i:=1 to 3 do
- begin
- rectangle(10+(i+1)*d,10+d,10+(i+2)*d,10+2*d);
- rectangle(10+(i+1)*d,10+4*d,10+(i+2)*d,10+5*d);
- end;
- for i:=1 to 2 do
- rectangle(10+5*d,10+(i+1)*d,10+6*d,10+(i+2)*d);
- end.
Объяснение кода листинга программы
- Подключается библиотека graphABC.
- Объявляются две переменные: i и d, типа integer.
- Устанавливается размер окна приложения.
- Вычисляется и устанавливается размер шрифта.
- Задается начальное положение кисти для рисования (цвет - красный).
- Запускается цикл for, который выполняется 9 раз.
- Внутри цикла рисуются две линии, используя функцию line. Первая линия рисуется от координат (10,10) до (410,10), вторая - от (10,10) до (10,410), с шагом (i-1)*d.
- Задается цвет кисти на красный.
- Запускается еще один цикл for, который выполняется 6 раз.
- Внутри цикла рисуются 6 прямоугольников, используя функцию rectangle. Первые два прямоугольника имеют размеры (10+(i+1)d,10+d,10+(i+2)d,10+2d), вторые два - (10+(i+1)d,10+4d,10+(i+2)d,10+5d), а третий - (10+(i+1)d,10+5d,10+(i+2)d,10+6*d).
- Цикл for завершается.
- Кисть сбрасывается на свой первоначальный цвет.
- Закрывается окно приложения.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д