Нарисовать ламповый диод - Turbo Pascal

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

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

Собственно нужно нарисовать используя graph ламповый диод как на картинке,долго бился над этим(т.к. этого мы еще не проходили),но все-таки получилось что-то более-менее сносное.Тем не менее т.к. я использовал дугу эллипса линии вышли под углом,можно ли как-нибудь выровнять их?
Листинг программы
  1. Program ind3;
  2. uses crt,graph;
  3. var gd,gm:integer;
  4. begin clrscr;
  5. gd:=detect;
  6. initgraph(gd,gm,'/tp_71/bgi');
  7. Circle(100,150,90);
  8. Line(100,115,100,25);
  9. Line(140,115,60,115);
  10. Ellipse(100,285,0,180,30,90);
  11. end.

Решение задачи: «Нарисовать ламповый диод»

textual
Листинг программы
  1. uses graph;
  2. {чтобы не писать 3 раза одно и тоже}
  3. procedure krest(x,y:integer);
  4. begin
  5. line(x-3,y+3,x+3,y-3);
  6. line(x-3,y-3,x+3,y+3);
  7. end;
  8. var gd,gm,x0,y0:integer;
  9. begin
  10. gd:=detect;
  11. initgraph(gd,gm,'/tp_71/bgi');
  12. setbkcolor(15);
  13. setcolor(8);
  14. x0:=getmaxX div 2;{центр рисунка в центре экрана}
  15. y0:=getmaxY div 2;
  16. Circle(x0,y0,90);
  17. Line(x0,y0-160,x0,y0-60);
  18. Line(x0-40,y0-60,x0+40,y0-60);
  19. Line(x0-30,y0+80,x0-30,y0+160);
  20. Line(x0+30,y0+80,x0+30,y0+160);
  21. arc(x0,y0+80,0,180,30);
  22. krest(x0,y0-160);
  23. krest(x0-30,y0+160);
  24. krest(x0+30,y0+160);
  25. readln;
  26. end.

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

  1. Подключается библиотека graph.
  2. Определяется процедура krest, которая рисует крест на экране.
  3. Определяются переменные gd, gm, x0 и y0, которые используются для работы с графиком.
  4. Вызывается функция detect, чтобы определить тип графического устройства.
  5. Инициализируется графическая система с помощью функции initgraph, передавая ей детектор и имя файла библиотек.
  6. Устанавливается цвет фона с помощью функции setbkcolor.
  7. Устанавливается цвет текста с помощью функции setcolor.
  8. Вычисляется центр рисунка как половина максимальных координат экрана.
  9. Рисуется окружность с радиусом 90, центром в центре экрана.
  10. Рисуются две линии, соединяющие центр рисунка с верхней и нижней частями экрана.
  11. Рисуются еще две линии, соединяющие углы креста.
  12. Вызывается функция readln, чтобы дождаться ввода с клавиатуры.

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


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

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

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

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

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

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