• Предмет: Информатика
  • Автор: 1Афина1
  • Вопрос задан 2 года назад

python Вычислить высоту треугольника площадью S, если его основание больше высоты на величину a.

Результат округлить до сотых.


БЕЗ! sqrt!

Ответы

Ответ дал: SmEgDm
0

Для начала выведем формулу нахождения высоты:

S=\frac{1}{2}bh, b = h+a,\\S=\frac{1}{2}(h+a)h,\\h^2+ah=2S,\\h^2+ah-2S=0,\\D = a^2+8S > 0,\\h_1 = \frac{-a-\sqrt{D} }{2} <0,(*)\\h_2 = \frac{-a+\sqrt{D} }{2}.\\\\h=\frac{-a+\sqrt{a^2+8S} }{2}.

(*): не удовлетворяет условию, так как длина высоты не может быть отрицательной.

Код:

S, a = map(int, input().split())

print(round((-a+(a*a+8*S)**(1/2))/2, 2))

Вас заинтересует