інший. Згідно цьому визначенню отримуємо:
a 2 = b 2 + c 2 - 2b пр AC AB (1)
Якщо х позначає довжину проекції (Позитивне число), то, коли кут А гострий:
a 2 = b 2 + c 2 - 2bx
а коли кут А тупий, то
a 2 = b 2 + c 2 +2 bx
прямий кут А:
a 2 = b 2 + c 2
З першого методу рішення випливає другий, яким я скористаюся в процесі створення програми. Формулу (1) можна представити у вигляді:
a 2 = b 2 + c 2 - 2b cos A (2)
Варто пояснити, чому нам не підходить перший метод. Проекції припускають графічне побудова трикутника, що в моєму випадку не тільки недоцільно, а просто не вимагається поставленим завданням. З формули (2) відповідно:
cos A = (b 2 + c 2 - a 2 )/2 В· b В· c (3)
За допомогою заміни букв виходять інші дві формули для залишилися кутів:
cos B = (a 2 + c 2 - b 2 )/2 В· a В· c (4)
cos C = (a 2 + b 2 - c 2 )/2 В· a В· b (5)
Тепер, знаючи косинус кута, можна обчислити сам кут. Кут менше 90 В°
гострий; рівний 90 В° - прямий; більше 90 В° відповідно тупокутний. Кут обчислюється за допомогою зворотного тригонометричної функції arccos (x). арккосинуса ікс є кут, косинус якого дорівнює ікс.
В
A = arccos (b 2 + c 2 - a 2 )/2 В· b В· c (6)
B = arccos (a 2 + c 2 - b 2 )/2 В· a В· c (7)
C = arccos (a 2 + b 2 - c 2 )/2 В· a В· b (8)
Реалізацію алгоритму в блок-схемі можна побачити на наступній сторінці.
В
В
3 Посібник користувача
Користуватися даною програмою дуже просто: починати роботу з натискання кнопки або просто натиснути кнопку Enter.
В
Після слід ввести три числа, відповідно є сторонами трикутника. На ввід існує кілька обмежень:
В· Число не повинно дорівнювати нулю;
В· Сума довжин двох сторін не повинна перевищувати довжину третьою;
Переввод значень у разі порушень дозволяється до трьох разів, на четвертій спробі, буде виконаний вихід з програми.
В
В
Порахувавши, програма видасть результат у наступному вигляді:
В
4 Тестування програми
Розглянемо рішення поставленої задачі на конкретному прикладі. Припустимо, нам дано трикутник зі сторонами відповідно 5, 6, 8. Дотримуючись алгоритмом програми виходить дуже просте і компактне вираз. Хоча при гарному стилі програмування можна було б розбити вираз на декілька логічних блоків, дот...