Определить длины биссектрис треугольника, заданного координатами вершин - Pascal

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

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

Комбинированные типы данных. Напишите программу, которая определяет длины биссектрис треугольника, заданного координатами его вершин. Заранее спасибо)

Решение задачи: «Определить длины биссектрис треугольника, заданного координатами вершин»

textual
Листинг программы
type point=record
           x,y:real;
           end;
function dlina(a,b:point):real;
begin
dlina:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y))
end;
function biss(a,b,c:point):real;
var ab,bc,ac:real;
begin
ab:=dlina(a,b);
bc:=dlina(b,c);
ac:=dlina(a,c);
biss:=sqrt(ab*bc*(ab+bc+ac)*(ab+bc-ac))/(ab+bc);
end;
var a,b,c:point;
begin
writeln('Введите координаты вершин треугольника');
readln(a.x,a.y,b.x,b.y,c.x,c.y);
writeln('Длины биссектрис: ',biss(a,b,c):0:2,' ',biss(b,c,a):0:2,' ',biss(c,a,b):0:2);
end.

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

  1. Объявляется пользовательский тип point для хранения координат точек: type point=record x,y:real; end;
  2. Объявляется функция dlina для вычисления расстояния между двумя точками по формуле расстояния между двумя точками: function dlina(a,b:point):real; begin dlina:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y)) end;
  3. Объявляется функция biss для вычисления длины биссектрисы треугольника: function biss(a,b,c:point):real; var ab,bc,ac:real; begin ab:=dlina(a,b); bc:=dlina(b,c); ac:=dlina(a,c); biss:=sqrt(ab*bc*(ab+bc+ac)*(ab+bc-ac))/(ab+bc); end;
  4. Определение трех переменных типа point: var a, b, c:point;
  5. Пользователю предлагается ввести координаты вершин треугольника: writeln('Введите координаты вершин треугольника'); readln(a.x,a.y,b.x,b.y,c.x,c.y);
  6. Вычисляются длины биссектрис треугольника с использованием функции biss: writeln('Длины биссектрис: ',biss(a,b,c):0:2,' ',biss(b,c,a):0:2,' ',biss(c,a,b):0:2);
  7. Программа завершается. Этот код использует структуры данных и функции для вычисления длин биссектрис треугольника по его вершинам, вводимым пользователем.

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


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

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

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