Регистрация
Войти
Стать экспертом Правила
Информатика

Программирование алгоритмов линейной структуры.написать код на с++Даны три стороны треугольника a,b,c. Определитьуглы треугольника.a=13,5b=20,8c=29,6

ОТВЕТЫ

117.725°, 23.8109°, 38.4643°

Можно использовать теорему косинусов:

c^2=a^2+b^2-2ab\cos\gamma\\\cos\gamma=\dfrac{a^2+b^2-c^2}{2ab}

Считаем такие дроби, берем арккосинус, получаем угол в радианах. Можно умножить на 180/π, тогда получится угол в градусах.

По-хорошему, можно определить функцию, которая будет вычислять угол, тогда код будет опрятнее, понятнее, и в неём будет сложнее допустить ошибку. Но я этого делать не буду :)

Код (C++):

#define _USE_MATH_DEFINES

#include <iostream>

#include <cmath>

int main() {

 double a, b, c;

 std::cin >> a >> b >> c;

 std::cout << acos((a * a + b * b - c * c)/(2 * a * b)) * 180/M_PI << " ";

 std::cout << acos((c * c + b * b - a * a)/(2 * c * b)) * 180/M_PI << " ";

 std::cout << acos((a * a + c * c - b * b)/(2 * a * c)) * 180/M_PI << " ";

}

101
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам