下沙论坛

 找回密码
 注册论坛(EC通行证)

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 6285|回复: 2
打印 上一主题 下一主题

VB中定义Arccos函数

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2003-4-18 01:11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是这样的:) D8 a3 Y4 X5 [8 ^) c
Private Function Arccos(x As Double, n As Long)
# z! W3 I. N7 }; PDim i As Long, y As Double
+ L  I" X: i8 q) oFor i = 1 To n7 d" r, }+ E0 Z- L' v9 P
    y = y + (-1 / Sqr(1 + (x / n * i) ^ 2)) * x / n
& h: I) ^! W( B' A% Y( [Next9 {4 A& f# ]' t" k! W5 K5 _6 c4 P( m
Arccos = y
, I( c- k* w% ~& j( h/ wEnd Function" O$ y' ]1 I. ~% B# q/ t3 L1 N* s
  u/ O* E  v5 y: n
用的是Arccos的微分来算近似值,怎么不对?
; @* U7 O3 b# g# j) I# Y+ ?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩
  • TA的每日心情
    擦汗
    7 天前
  • 签到天数: 2402 天

    [LV.Master]伴坛终老

    2
    发表于 2003-4-19 22:04:00 | 只看该作者
    公式对就没有问题拉

    该用户从未签到

    3
     楼主| 发表于 2003-4-24 22:58:00 | 只看该作者
    Const pi As Double = 3.14159265359/ {. c6 S) C9 h4 ~
    Private Function Arccos(x As Double, n As Long) ' n 为函数精度,建议为100
    9 W- J8 m2 T$ m% L4 x  m6 B    Select Case x
    3 g6 `, e" }* J  U) n" u    Case 1, N: e6 n8 Z! E6 G: t& [
            Arccos = 0  Q& n* l8 _/ c; F7 |! l
        Case -1
    % ^; V: s) Z4 t; E& r5 V- I( z        Arccos = pi) d! w( W& B- G) n* {8 I+ n0 d4 ^, Q
        Case -1 To 1
    ! c9 c1 @1 K' ^$ j0 }, D+ T        Dim dx As Double, y As Double, i As Long
    $ U' f3 P/ ?2 S  Q2 @7 l        dx = x / n
    - O" c9 {$ N5 a/ a5 ~- m, U        For i = 1 To n# g1 |& a  I7 b1 e) m
                y = y + (-1 / Sqr(1 - (dx * i + dx / 2) ^ 2)) * dx# |) l- s, J0 L& w
            Next
    6 Q5 }) Z1 z  I5 l. |        Arccos = y + pi / 2
    ' a' |8 M& f: e! E    Case Else! {1 U) V3 E8 \, k
            '异常3 F9 ^; o9 v( U- h  H
        End Select
    0 M& t+ h/ B- P+ S! \% u) ^# m; gEnd Function7 O% a) l8 [' n3 ?7 F
    ! C, c4 f$ `: X5 t$ s1 W, S
    搞定了

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表