Разделить код на процедуры по содержанию - Pascal ABC

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

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

Разделить на процедуры по содержанию. Из составных процедур создать отдельную библиотеку в форме модуля. Составить программу , которая использует скомпилирован модуль для построения изображения , в разделе операторов содержит только вызовы процедур.PascalABC Код:
Листинг программы
  1. uses graphABC;
  2. begin
  3. setwindowsize(800,600);
  4. setpencolor(clblue);
  5. setbrushcolor(clblue);
  6. rectangle(0,0,800,400);
  7. setpencolor(clgreen);
  8. setbrushcolor(clgreen);
  9. rectangle(0,400,800,600);
  10. setpencolor(clblack);
  11. setbrushcolor(clSilver);
  12. rectangle(50,300,250,500);
  13. rectangle(250,500,500,300);
  14. line(50,300,150,200);
  15. line(50,300,150,200);
  16. line(150,200,250,300);
  17. line(400,200,500,300);
  18. line(150,200,400,200);
  19. floodfill(150,250,clsilver);
  20. floodfill(300,250,clMaroon);
  21. setbrushcolor(clyellow);
  22. rectangle(110,360,190,440);
  23. rectangle(280,360,360,440);
  24. setbrushcolor(clSilver);
  25. rectangle(280,180,320,230);
  26. setbrushcolor(clMaroon);
  27. rectangle(400,350,470,500);
  28. setbrushcolor(clyellow);
  29. circle(150,270,20);
  30. circle(410,410,5);
  31. setbrushcolor(Clsilver);
  32. fillellipse (570,80,50,50);
  33. end.

Решение задачи: «Разделить код на процедуры по содержанию»

textual
Листинг программы
  1. // Откомпилируйте библиотеку, нажав Ctrl-F9. В папке должен появиться файл MyLib.dll
  2. library MyLib;
  3.  
  4. uses
  5.   graphABC;
  6. procedure init();
  7. begin
  8. setwindowsize(800, 600);
  9. end;
  10. procedure nebo();
  11. begin
  12.   setpencolor(clblue);    
  13.   setbrushcolor(clblue);    
  14.   rectangle(0, 0, 800, 400);
  15. end;
  16.  
  17. procedure trava ();
  18. begin
  19.   setpencolor(clgreen);      
  20.   setbrushcolor(clgreen);
  21.   rectangle(0, 400, 800, 600);
  22. end;
  23.  
  24. procedure dom();
  25. begin
  26.   setpencolor(clblack);//дом
  27.   setbrushcolor(clSilver);
  28.   rectangle(50, 300, 250, 500);
  29.   rectangle(250, 500, 500, 300);
  30.   line(50, 300, 150, 200);        
  31.   line(50, 300, 150, 200);        
  32.   line(150, 200, 250, 300);        
  33.   line(400, 200, 500, 300);        
  34.   line(150, 200, 400, 200);        
  35.   floodfill(150, 250, clsilver);  
  36.   floodfill(300, 250, clMaroon);
  37.   setbrushcolor(clMaroon);
  38.   rectangle(400, 350, 470, 500);
  39.   setbrushcolor(clyellow);
  40.   circle(410, 410, 5);
  41.   setbrushcolor(clSilver);
  42.   rectangle(280, 180, 320, 230);
  43. end;
  44.  
  45. procedure okna();
  46. begin
  47.   setbrushcolor(clyellow);//окно
  48.   rectangle(110, 360, 190, 440);  
  49.   rectangle(280, 360, 360, 440);  
  50.   setbrushcolor(clyellow);
  51.   circle(150, 270, 20);
  52. end;
  53.  
  54. procedure dym();
  55. begin
  56.   setbrushcolor(Clsilver);//дым
  57.   fillellipse(570, 80, 50, 50);
  58. end;
  59. end.

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

  1. Создание библиотеки MyLib с использованием языка программирования Pascal ABC.
  2. Объявление процедур:
    • init() - устанавливает размер окна.
    • nebo() - рисует синий прямоугольник.
    • trava() - рисует зеленый прямоугольник.
    • dom() - рисует черный прямоугольник, а также две линии и окружность.
    • okna() - рисует желтые прямоугольники и окружность.
    • dym() - рисует серебристый эллипс.
  3. Конец программы.

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


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

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

6   голосов , оценка 3.833 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы