java 反三角函数 反正切函数 原代码 精度到0.03秒  


本人最近在编手机上用的java道 路放样软件时,遇到了一个最大的问题,java的库函数里没有反三角函数,这个问题解决不了,软件就编不出来。找了半天也没有第三方库来解决。最后被逼无 奈,只能自己写了。下面放出原代码,供想用的朋友们参考或使用。使用的唯一要求是:如果大家要转载,请标明是从这转的,谢谢。

/** 
   * 余弦反算函数,精度到0.03秒 
   * @param a double 余弦值 
   * @return double   角度(360) 
   */ 
public double arccos(double a) 
{ 
    double b = 90.0, c0 = 0.0, c1 = 180.0; 
    if (a < 1 && a > -1) 
    { 
      do 
      { 
if (Math.cos(b * Math.PI / 180) >= a) 
{ 
   c0 = b; 
   b = (c0 + c1) / 2; 
} 
if (Math.cos(b * Math.PI / 180) <= a) 
{ 
   c1 = b; 
   b = (c0 + c1) / 2; 
} 
      } 
      while (Math.abs(c0 - c1) > 0.00001); 
    } 
    return b; 
}