Ю1.26

Задача:

Треугольник задается координатами своих вершин на плоскости : [latex]A(x_{1} , y_{2})[/latex] , [latex]B(x_{2} , y_{2})[/latex] , [latex]C(x_{3} , y_{3})[/latex] . Найти длину и основание высоты, опущенной из вершины A на сторону ВС.

Тесты

[latex]x_{А}[/latex] [latex]y_{A}[/latex] [latex]x_{B}[/latex] [latex]y_{B}[/latex] [latex]x_{C}[/latex] [latex]y_{C}[/latex] Основание ([latex]BC[/latex]) Высота[latex]h[/latex] Комментарий
7 9 45 9 34 5 11 13 пройден
0.75 1 0.25 2 0.5 3 1 0 пройден
98 67 56 47 34 95 52 47 пройден
0 1 0 3 0 4 1 0 пройден

В четвертом  примере имеем вырожденный треугольник, для которого площадь будет равна нулю , следовательно и высота так же равна 0

Код:

ссылка на C++ : http://ideone.com/fBfd8S

ссылка на Java : http://ideone.com/ut9G6J

 

Решение:

Для начала находим стороны треугольника :

далее выполняем условие , что если сумма двух сторон меньше третей то треугольник не существует. Если же наоборот начинаем считать плащадь треугольника по формуле :

и с помощью площади находим высоту :

и в конце выводим высоту и основание.

Related Images: