javascript - 对于小于 1 的值 Math.acosh() 返回 NaN

标签 javascript node.js math

我正在解决一个 Keta 在 codewars 中,Keta 是为了找到如果给定的边可以形成一个三 Angular 形,我解决了这个问题但是当我试图使用余弦定律找到 Angular A< br/> 我发现 对于小于 1 的值,Math.acosh() 返回 NaN。 如何找到 Angular A?

function isTriangle(a,b,c)
{
  if(a > 0 && b > 0 && c > 0){

    let angelA, cosAInverse;

    //law of cosines CosA = (b^2 + c^2 - a^2) / (2 * b * c);
    angelA = (Math.pow(b,2) + Math.pow(c, 2) - Math.pow(a,2)) / (2 * b * c);

    //Math.acosh(0.852);
    cosAInverse = Math.acosh(angelA); // expected value 28.95502437

    console.log(cosAInverse); // NaN

    return cosAInverse;

  }
  return false;
}
var xx = isTriangle(1,2,2);
console.log(xx);

最佳答案

你不需要 Math.acosh()Math.acos()

关于javascript - 对于小于 1 的值 Math.acosh() 返回 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55945247/

相关文章:

java - 两个数相加得到一个值的算法

javascript - filepicker.io 在 Chrome 中阻止了 iframe

javascript - 使用 angularjs forEach 的 this.key 和 this[key] 之间的区别

javascript - 无法等待 Node.js 中的 sqlite3.Database.get() 函数完成

android - 按照教程后无法安装react-native-cli

c++ - 如何在不导致像素重叠的情况下缩小块

计算 C 数组的行列式

javascript - 在 Asp.net MVC 母版页中设置 Body 的 OnLoad 属性

javascript - jQuery UI 的小部件 "destroy"方法 - 不一致错误

node.js - 为什么对 Node 服务器的请求挂起?