下沙论坛

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

QQ登录

QQ登录

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

VB中定义Arccos函数

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2003-4-18 01:11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是这样的:! S% R) S2 i# G, N! m$ F
Private Function Arccos(x As Double, n As Long)
/ Q) `5 f+ i4 A+ Q2 nDim i As Long, y As Double
, x; Z: Y* x  l. W9 v5 T2 x- G" @For i = 1 To n
4 s6 S* h1 e( b3 _    y = y + (-1 / Sqr(1 + (x / n * i) ^ 2)) * x / n! _+ ?% K% P8 c/ b5 Z) ?/ Y
Next7 F  ?7 O3 N8 O8 p( a; t
Arccos = y
8 s: j0 d' [. t) s* _End Function
1 m8 k; Z) G* b" a* h; n0 K2 F
4 V" G( _( W' Q用的是Arccos的微分来算近似值,怎么不对?
( a+ P: A+ y  L% I. x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩
  • TA的每日心情
    奋斗
    前天 10:07
  • 签到天数: 2385 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    3
     楼主| 发表于 2003-4-24 22:58:00 | 只看该作者
    Const pi As Double = 3.14159265359) k1 j# U% M9 o( A3 |, }; {# r
    Private Function Arccos(x As Double, n As Long) ' n 为函数精度,建议为1002 b" K( n6 W/ _
        Select Case x
    ( U6 x- l; F8 d& s3 U5 P; z9 n    Case 1
    6 V  w4 D+ k) [        Arccos = 0* q1 A: P" v8 h& F! u# z
        Case -1; s+ Q, r( b8 @( b8 w8 y
            Arccos = pi
    # k/ V# g1 _4 F9 C    Case -1 To 1
    2 Z- Z! i  s  C4 O        Dim dx As Double, y As Double, i As Long( o& Z$ T2 N4 y/ k; M$ c9 p
            dx = x / n
    8 F* C, q4 {( ]        For i = 1 To n
    ' l9 w3 M" [. ^            y = y + (-1 / Sqr(1 - (dx * i + dx / 2) ^ 2)) * dx5 F6 Z/ N6 b5 U. l5 |- P
            Next) h8 K+ K* c$ K) I, P
            Arccos = y + pi / 2) F! A7 k/ I- O3 q
        Case Else
    8 ^! f+ |9 n( E+ C        '异常* w4 q; T$ ?- l& E
        End Select
    & D" D/ ^( D. ~# B) d& AEnd Function
    & j! e: P# e0 C+ O2 D  ?
    3 K8 b* s# P5 P, {2 s# G" H搞定了

    本版积分规则

    关闭

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

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