コメント

このコメントは、【トピック】逆余弦(アークコサイン)へのコメントです。

コメントの内容

Logo mini hightoller(投稿日:2011/07/07 13:07/07/11)
気になったのでユーザー関数で計算できないか無い知恵絞ってみる。
ARCSIN(X) = ATN( X / SQRT( -X + 1 ) )
ARCCOS(X) = -ATN( X / SQRT( -1 * X^2 + 1 ) ) + 1.5708
Arctan(x)=Σ{(-1)^n*x^(2n+1)/(2n+1)}(ただしn=0~∞)

def Arctan(x)
abs=1;xx=x;ans=x
n=1;while n<10
abs=abs*-1
xx=xx*x*x
ans=ans+abs*xx/(2n+1)
n=n+1;end
return ans
end

def Arcsin(x)
return Arctan(x/sqrt(-1*x+1))
end

def Arccos(x)
return -1*Arctan(x/sqrt(-1*x*x+1))+1.5708
end

合ってるかどうかは保障できないが、公式の再現は可能と思われる。

コメントの内容(一番最初の投稿)

Logo mini hightoller(投稿日:2011/07/07 13:07/07/11)
気になったのでユーザー関数で計算できないか無い知恵絞ってみる。
ARCSIN(X) = ATN( X / SQRT( -X + 1 ) )
ARCCOS(X) = -ATN( X / SQRT( -1 * X^2 + 1 ) ) + 1.5708
Arctan(x)=Σ{(-1)^n*x^(2n+1)/(2n+1)}(ただしn=0~∞)

def Arctan(x)
abs=1;xx=x;ans=x
n=1;while n<10
abs=abs*-1
xx=xx*x*x
ans=ans+abs*xx/(2n+1)
n=n+1;end
return ans
end

def Arcsin(x)
return Arctan(x/sqrt(-1*x+1))
end

def Arccos(x)
return -1*Arctan(x/sqrt(-1*x*x+1))+1.5708
end

合ってるかどうかは保障できないが、公式の再現は可能と思われる。