Нарисовать букву Р - 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.

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

  1. Подключается библиотека graphABC.
  2. Объявляются две переменные: i и d, типа integer.
  3. Устанавливается размер окна приложения.
  4. Вычисляется и устанавливается размер шрифта.
  5. Задается начальное положение кисти для рисования (цвет - красный).
  6. Запускается цикл for, который выполняется 9 раз.
  7. Внутри цикла рисуются две линии, используя функцию line. Первая линия рисуется от координат (10,10) до (410,10), вторая - от (10,10) до (10,410), с шагом (i-1)*d.
  8. Задается цвет кисти на красный.
  9. Запускается еще один цикл for, который выполняется 6 раз.
  10. Внутри цикла рисуются 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).
  11. Цикл for завершается.
  12. Кисть сбрасывается на свой первоначальный цвет.
  13. Закрывается окно приложения.

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


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

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

10   голосов , оценка 3.8 из 5