Составить программу построения рисунка с уже готовой библиотеки - Turbo Pascal

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

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

Скласти програму побудови малюнка з уже готової бібліотеки (Будиночок, дерево, сонечко, і т.п) Користувач вибирає єлемент місце розташування єлемента й масштаб (Наприклад, 1:1 . 1:2, 2:1 чи за допомогою коєфіціенту).

Решение задачи: «Составить программу построения рисунка с уже готовой библиотеки»

textual
Листинг программы
Program DOM;
uses
  graph,crt;
var
  gd,gm,a,b,c,d: integer;
 
procedure domik(x,y,sh,v:integer);
begin
  line(x,y,x,y+v);
  line(x,y+v,x+sh,y+v);
  line(x+sh,y+v,x+sh,y);
  line(x,y,x+sh,y);
  line(x,y,x+sh div 2,y-v div 2);
  line(x+sh div 2,y-v div 2,x+sh,y);
end;
 
begin
  clrscr;
  gd:=detect;
  initgraph(gd,gm, 'c:\bp\bgi');
  domik(200,200,50,100); 
  readln;
  closegraph;
end.

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

  1. Программа DOM использует библиотеку графики, предоставленную Turbo Pascal, и подключает необходимые модули graph и crt.
  2. Переменные gd, gm, a, b, c и d объявлены как целые числа.
  3. Функция domik принимает шесть аргументов: x, y, sh и v, которые являются целыми числами, и выполняет следующие действия:
    • Вызывает функцию line шесть раз, чтобы нарисовать линии между точками (x, y), (x, y + v), (x + sh, y + v), (x + sh, y), (x, y) и (x + sh / 2, y - v / 2), (x + sh / 2, y - v / 2, x + sh, y) соответственно.
    • Вызывает функцию line еще три раза, чтобы нарисовать линии между точками (x, y), (x, y + v), (x + sh, y + v) и (x, y).
  4. Программа начинает с очистки экрана с помощью функции clrscr.
  5. Затем функция initgraph вызывается с аргументами gd, gm и путь к файлу 'c:\bp\bgi', чтобы инициализировать графическую систему.
  6. Затем вызывается функция domik с аргументами 200, 200, 50 и 100, чтобы нарисовать прямоугольник с шириной 50 и высотой 100 в точке (200, 200).
  7. В конце программа читает ввод с помощью функции readln и закрывает графическую систему с помощью функции closegraph.

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

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