Напишите функцию, которая будет принимать длину сторон треугольника (x, y и z) и определять, является ли он прямоугольным.
Примечания
- Прямоугольный треугольник — это треугольник, в котором один угол прямой (то есть 90 градусов).
- Самая длинная сторона (гипотенуза) не обязательно будет последним аргументом.
- Все аргументы будут целыми числами.
Примеры
right_triangle(3, 4, 5) ➞ True right_triangle(145, 105, 100) ➞ True right_triangle(70, 130, 110) ➞ False
Варианты решения
def right_triangle(*l): a, b, c = sorted(l) return a > 0 and a * a + b * b == c * c
def right_triangle(x, y, z): if x > 0 and y > 0 and z > 0: return (x * x + y * y + z * z) - max(x, y, z) ** 2 == max(x, y, z) ** 2 return False
def right_triangle(x, y, z): x, y, z = sorted([x, y, z]) return all(i > 0 for i in [x, y, z]) and x ** 2 + y ** 2 == z ** 2