Ошибка преобразования степени в радианы для функции Math.cos в javascript - PullRequest
0 голосов
/ 12 апреля 2020

У меня есть уравнение, чтобы найти углы треугольника, после вычисления я получаю преобразовать конечные результаты в обратную функцию Cos для получения угла. Я могу получить результаты на научном калькуляторе c, когда я ввожу значения все шаги имеют одинаковые значения, пока не будет вызвана обратная функция cos. Вот мои ценности. Я использую формулу cos для вычисления углов треугольника.

calculate(60,100,80) 

calculateAngle( a,b,c){
    var cosC = (this.getSquare(a)+this.getSquare(b)-this.getSquare(c))/(2*a*b)
    console.log(a,b,c,cosC,Math.acos(this.Todegrees(cosC)))
    return Math.acos(this.Todegrees(cosC))
}

getSquare(num){
    return num*num
}

Todegrees(degrees){
    var pi = Math.PI;
    return degrees * (180/pi);
}

Значение cosC is 0.6 и угол должны составлять 53 градуса. Но угол, возвращенный из Math.acos, кажется неправильным. Мой градус в радианах функционирует неправильно?

1 Ответ

1 голос
/ 12 апреля 2020

Вы применяете пересчет в градусы не с той стороны. acos принимает соотношение длин сторон или площадей и возвращает угол в радианах. Этот результат вы затем конвертируете в градусы

return toDegrees(Math.acos(cosC));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...