反余弦函数的一个有关问题
反余弦函数的一个问题
在CSDN上找到了反余弦函数的算法为:Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)
但是好想不对,如果X=1或-1,Sqr(-X * X + 1)=0,除数不能为零啊?
我现在要做的事情是y=Arccos(512-x)/512)(0 <=X <=1023),当X=0时,代到上面公式中运算根本不行啊,怎么办?
------解决方案--------------------
反余弦函数的定义是:Y=Arccos(X),定义域是:闭区间[-1,1],从这里可以看出,X可以为-1,或者1;其实,当X=1,或者-1时,Y=0,这是根据定义来的。
我查了,你在CSDN上找到的反余弦函数的公式是对的,这是近似计算公式,便于计算机进行运算,它的定义域要比标准的反余弦函数要窄。当你求自变量X=1,或-1时,Y的值都为0。
------解决方案--------------------
祥见《反三角函数》:
http://www.ourmaths.com:8080/htmlfile/p200395232825.htm
在CSDN上找到了反余弦函数的算法为:Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)
但是好想不对,如果X=1或-1,Sqr(-X * X + 1)=0,除数不能为零啊?
我现在要做的事情是y=Arccos(512-x)/512)(0 <=X <=1023),当X=0时,代到上面公式中运算根本不行啊,怎么办?
------解决方案--------------------
反余弦函数的定义是:Y=Arccos(X),定义域是:闭区间[-1,1],从这里可以看出,X可以为-1,或者1;其实,当X=1,或者-1时,Y=0,这是根据定义来的。
我查了,你在CSDN上找到的反余弦函数的公式是对的,这是近似计算公式,便于计算机进行运算,它的定义域要比标准的反余弦函数要窄。当你求自变量X=1,或-1时,Y的值都为0。
------解决方案--------------------
祥见《反三角函数》:
http://www.ourmaths.com:8080/htmlfile/p200395232825.htm