Напишіть функцію triangle. яка тестує переданий їй трикутник і повертає його тип. Трикутники бувають: гострокутними, прямокутними і тупоугольного. Функція приймає три числа, які відповідають довжині кожної сторони.
Щоб вирішити задачу доведеться згадати трохи шкільної геометрії. Почнемо з простого: трикутник не існує, якщо сума довжини двох будь-яких його сторін менше, або дорівнює довжині третьої сторони:
Умова виглядає громіздким і важким для читання. Його можна трохи спростити за допомогою методів масивів sort. якщо впорядкувати аргументи по зростанню, то ми точно будемо знати, що на останньому місці буде знаходитися сторона з найбільшою довжиною:
Недолік даного способу полягає в тому, що функція буде обробляти всі передавання їй аргументи, а не тільки перші три. Цю проблему досить просто вирішити за допомогою методу масивів slice:
Дане дейтвія також призведе до перетворення псевдомассіва arguments до масиву, тому можна відразу ж скористатися методом sort.
Отже, що ми вже маємо? Відсортований по зростанню масив аргументів і висновок про те, що трикутника не існує. Завдання практично вирішена. Залишається тільки порівнювати квадрати довжин сторін в соотвествие з правилами:
- Якщо квадрати двох менших сторін рівні квадрату третьої сторони, то трикутник прямогульний.
- Якщо менше, то - трикутник тупоугольние.
- Якщо більше, то - трикутник гострокутний.