📄 20553.html
字号:
<html> <head> <title>Re: ACOS(x)与ASIN(x)的问题(三角函数)......</title> </head> <body bgcolor="#FFFFFF" vlink="#808080"> <center> <h1>Re: ACOS(x)与ASIN(x)的问题(三角函数)......</h1> </center><hr size=7 width=75%><hr size=7 width=75%><p>Posted by <a href="mailto:honey0@tcts1.seed.net.tw">Honey</a> on October 23, 1999 at 11:16:30:<p>In Reply to: <a href="20527.html">ACOS(x)与ASIN(x)的问题(三角函数)......</a> posted by vb怪手 on October 22, 1999 at 12:44:59:<p>: 请问各位网友:<br>: 反三角函数ASIN(X)与ACOS(x)应如何撰写呢??????或是那有现成已写好的函数可取得...........谢谢....<br>可用二元搜寻法<br>试试看以下函数<br>可试着输入<br>s=ASin(0.5)<br>试试看传回值S是否为30<br>也可以试试其他数值<br>如果知道了 ACos也就不是问题了 就此省略<br>Public Function ASin(SValue As Double) As String<br>Dim Pi As Double, dX As Byte, Cen As Double<br>Dim dCen As Double<br>Cen = 90<br>dCen = 90<br>Pi = 3.14159265358979 '3238462643383279502884197<br>If Abs(SValue) > 1 Then<br> MsgBox "Sin函数值介于1到-1之间", vbOKOnly, "呆瓜"<br> Exit Function<br>End If<br>'Note:由于Sin(Pi/2)=1 Sin函数绝对值小于等于1 _<br>有对秤性 讨论值只要0~(Pi/2)即可 _<br>例如 Sin(U)=Sin(Pi-U) _<br>-Sin(U)=Sin(Pi+U) 即可表示所有角度<p>If SValue < 0 Then '/*角度为(Pi+k), 0 <= k<= Pi*/<br> dX = 180 '/*根据-Sin(U)=Sin(Pi+U)这式子 纪录位移*/<br> SValue = -SValue<br>End If<p>'Note:Sin函数由0~(Pi/2)为递增 可用二元搜寻法寻找值<br>If SValue = 1 Then<br> Cen = Cen + dX<br> ASin = CStr(Cen)<br> Exit Function<br>Else<br> Do While Abs(Sin(Cen * Pi / 180#) - SValue) > 1E-16 '/*允许误差值*/<br> Dim j As Double<br> dCen = dCen / 2#<br> If Sin(Cen * Pi / 180#) > SValue Then<br> Cen = Cen - dCen<br> Else<br> Cen = Cen + dCen<br> End If<br> Loop<br> Cen = Cen + dX<br> ASin = CStr(Cen)<br>End If<p>End Function<br><br><br><hr size=7 width=75%><p><a name="followups">Follow Ups:</a><br><ul><!--insert: 20553--><!--top: 20561--><li><a href="20561.html">Re: ACOS(x)与ASIN(x)的问题(三角函数)......</a> <b>Honey</b> <i>19:58:24 10/23/99</i>(<!--responses: 20561-->0)<ul><!--insert: 20561--></ul><!--end: 20561--></ul><!--end: 20553--><br><hr size=7 width=75%><p></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -