Построение равнобедренного треугольника - Free Pascal

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

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

Нужно написать программу построения равнобедренного треугольника по боковой стороне и углу при основании, используя окружности. Помогите, пожалуйста.

Решение задачи: «Построение равнобедренного треугольника»

textual
Листинг программы
  1. uses graph,wincrt;
  2. var u:real;
  3.     b,x1,y1,x2,y2,x3,y3:integer;
  4. begin
  5. initgraph(x1,x2,'');
  6. {задаем значения боковой стороны и угла при основании}
  7. b:=getmaxY div 2;
  8. u:=50;
  9. {задаем координаты вершины A}
  10. x1:=getmaxX div 2-200;
  11. y1:=getmaxY-100;
  12. settextstyle(0,0,2);
  13. setcolor(14);
  14. outtextXY(getmaxX div 2-50,20,'Press any key');
  15. {рисуем ее}
  16. setfillstyle(1,9);
  17. setcolor(9);
  18. fillellipse(x1,y1,3,3);
  19. setcolor(10);
  20. outtextXY(x1-10,y1+10,'A');
  21. readkey;
  22. {определяем конец луча соответствующего боковаой стороне}
  23. u:=u*pi/180;
  24. x2:=x1+round(y1*cos(u)/sin(u));
  25. y2:=0;
  26. {рисуем его}
  27. setcolor(15);
  28. line(x1,y1,x2,y2);
  29. readkey;
  30. {рисуем окружность из вершины А радиусом=b}
  31. circle(x1,y1,b);
  32. readkey;
  33. {рисуем вершину В}
  34. x2:=x1+round(b*cos(u));
  35. y2:=y1-round(b*sin(u));
  36. setcolor(9);
  37. fillellipse(x2,y2,3,3);
  38. setcolor(10);
  39. outtextXY(x2-10,y2-30,'B');
  40. readkey;
  41. {рисуем сторону AB}
  42. setcolor(12);
  43. setlinestyle(0,0,3);
  44. line(x1,y1,x2,y2);
  45. readkey;
  46. {рисуем луч соответственно основанию}
  47. setcolor(15);
  48. setlinestyle(0,0,1);
  49. line(x1,y1,getmaxX,y1);
  50. readkey;
  51. {рисуем окружность радиуса b из вершины B}
  52. circle(x2,y2,b);
  53. {рисуем вершину C}
  54. x3:=x2+round(b*cos(-u));
  55. setcolor(9);
  56. fillellipse(x3,y1,3,3);
  57. setcolor(10);
  58. outtextXY(x3+5,y1+10,'C');
  59. readkey;
  60. {рисуем сторону BC}
  61. setcolor(12);
  62. setlinestyle(0,0,3);
  63. line(x2,y2,x3,y1);
  64. readkey;
  65. {рисуем сторону AC}
  66. line(x1,y1,x3,y1);
  67. readkey
  68. end.

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

  1. Установка начального угла и длины стороны треугольника
  2. Задание координат вершины A
  3. Рисование окружности из вершины A радиусом=b
  4. Рисование стороны AB
  5. Рисование луча соответствующего боковой стороне
  6. Рисование окружности радиуса b из вершины B
  7. Рисование вершины C
  8. Рисование стороны BC
  9. Рисование стороны AC

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


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

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

8   голосов , оценка 3.75 из 5

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

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

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