
没有,只有一个Atn()是VB反正切函数,VB不提供其他反三角函数,不过可以用下列公式导出:
反正弦
Arcsin(X) = Atn(X / Sqr(-X X + 1))
反余弦
Arccos(X) = Atn(-X / Sqr(-X X + 1)) + 2 Atn(1)
反正割
Arcsec(X) = Atn(X / Sqr(X X - 1)) + Sgn((X) - 1) (2 Atn(1))
反余割
Arccosec(X) = Atn(X / Sqr(X X - 1)) + (Sgn(X) - 1) (2 Atn(1))
arccosx可以表示为Atn(Sqr(1 - x ^ 2) / x)
下面是一个例子:
Const pi = 31415926
Private Sub Command1_Click()
Dim i As Single, j As Single
i = 05
j = Arccos(i)
Print i, j, j / pi 180
i = -05
j = Arccos(i)
Print i, j, j / pi 180
i = 0
j = Arccos(i)
Print i, j, j / pi 180
End Sub
Private Function Arccos(ByVal x As Single) As Single
If x = 0 Then
Arccos = 31415926 / 2
Else
Arccos = Atn(Sqr(1 - x ^ 2) / x)
If Arccos < 0 Then '注意
Arccos = Arccos + 31415926
End If
End If
End Function
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)