Как решить задачу с определением трех сторон треугольника?
Задача:
Определите тип треугольника (остроугольный, тупоугольный, прямоугольный) с данными сторонами.
Необходимо вывести одно из слов: "right" для прямоугольного треугольника, "acute" для остроугольного треугольника, "obtuse" для тупоугольного треугольника или "impossible", если входные числа не образуют треугольник.
Чем же плох мой способ?
a = int(input())
b = int(input())
c = int(input())
if pow(c, 2) == pow(a, 2) + pow(b, 2):
print('right')
elif pow(b, 1) + pow(c, 2) - pow(a, 2) > 0:
print('acute')
elif pow(a, 2) + pow(b, 2) < pow(c, 2):
print('obtuse')
elif (a + b) <= c or (a + b) <= b or (c + b) <= a:
print('impossible')
a, b, c = 3, 4, 5
a, b, c = sorted([a, b, c])
if a + b <= c:
print('impossible')
else:
t = a * a + b * b - c * c
print(('right', 'obtuse', 'acute')[(t < 0) - (t > 0)])