Нарисовать рыбу - PascalABC.NET

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

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

Добрый день, помогите пожалуйста нарисовать в паскале рисунки как на картинках:

Решение задачи: «Нарисовать рыбу»

textual
Листинг программы
uses graphABC;
var x,y,d:integer;
begin
setpenwidth(3);
x:=windowwidth div 2;
y:=windowheight div 2;
d:=y-10;
rectangle(x-d,y-d,x+d,y+d);
setbrushcolor(bsSolid);
circle(x,y,d);
setpencolor(clWhite);
moveto(x-d,y);
lineto(x,y-d);
lineto(x+d,y);
lineto(x,y+d);
lineto(x-d,y);
floodfill(x,y,clWhite)
end.

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

  1. uses graphABC; - Импортирует модуль для работы с графикой
  2. var x,y,d:integer; - Объявляет три переменные типа integer для хранения координат и размера рыбы
  3. x:=windowwidth div 2; - Задает значение переменной x как середину ширины окна
  4. y:=windowheight div 2; - Задает значение переменной y как середину высоты окна
  5. d:=y-10; - Задает значение переменной d как разницу между y и 10 (высота рыбы)
  6. rectangle(x-d,y-d,x+d,y+d); - Рисует прямоугольник (тело рыбы)
  7. setbrushcolor(bsSolid); - Задает цвет кисти как сплошной (цвет тела рыбы)
  8. circle(x,y,d); - Рисует окружность (голова рыбы)
  9. setpencolor(clWhite); - Задает цвет пера как белый (для контура рыбы)
  10. moveto(x-d,y); - Перемещает перо в начальную точку для рисования контура рыбы
  11. lineto(x,y-d); - Рисует отрезок до головы рыбы
  12. lineto(x+d,y); - Рисует отрезок до хвоста рыбы
  13. lineto(x,y+d); - Рисует отрезок до верхней части головы рыбы
  14. lineto(x-d,y); - Замыкает контур рыбы, возвращаясь в начальную точку
  15. floodfill(x,y,clWhite) - Заливает область под рыбой белым цветом (для создания эффекта заполнения)

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


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

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

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