24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1166  |  回复: 5
本帖产生 2 个 程序强帖 ,点击这里进行查看

狼馨520

金虫 (小有名气)

[求助] 求lagrange插值编码

谁能指教一下lagrange插值的vb 编写方法,我不会,急需!!!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖


余泽成(金币+1): 谢谢参与应助! 2011-07-02 09:45:44
狼馨520(金币+2): 2011-07-03 14:18:59
看看lagrange插值介绍吧,这个很简单了
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2011-07-02 02:41:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

文俊点点

木虫 (著名写手)

【答案】应助回帖


jjdg(金币+1): 感谢参与程序语言版讨论 2011-07-03 13:09:14
狼馨520(金币+3): 2011-07-03 14:19:08
c的写过········vb表示不会··········
这是你所拥有的时间·····这是你所能改变的生活·········
3楼2011-07-02 18:10:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

狼馨520

金虫 (小有名气)


dubo(金币+1): 欢迎常来程序语言版讨论 2011-07-31 13:47:07
不会写  帮忙搞定一下吧
4楼2011-07-03 01:04:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjdg

版主 (知名作家)

优秀版主

【答案】应助回帖

★ ★ ★ ★ ★
dubo(金币+5, 程序强帖+1): 感谢应助 2011-07-31 13:47:46
N        整型变量,输入参数,节点个数
XA()        输入参数,存放插值节点
YA()        输入参数,存放函数值
X        输入参数,插值自变量
Y        输出参数,所求值
DY        输出参数,误差估计


Sub POLINT(XA(), YA(), N, X, Y, DY)
    Dim C(10), D(10)
    NS = 1
    DIF = Abs(X - XA(1))
    For I = 1 To N
        DIFT = Abs(X - XA(I))
        If DIFT < DIF Then
            NS = I
            DIF = DIFT
        End If
        C(I) = YA(I)
        D(I) = YA(I)
    Next I
    Y = YA(NS)
    NS = NS - 1
    For M = 1 To N - 1
        For I = 1 To N - M
            HO = XA(I) - X
            HP = XA(I + M) - X
            W = C(I + 1) - D(I)
            DEN = HO - HP
            If DEN = 0# Then
                Print "PAUSE"
                Exit Sub
            End If
            DEN = W / DEN
            D(I) = HP * DEN
            C(I) = HO * DEN
        Next I
        If 2 * NS < N - M Then
            DY = C(NS + 1)
        Else
            DY = D(NS)
            NS = NS - 1
        End If
        Y = Y + DY
    Next M
End Sub
努力学习!以正当途径!获得需要的知识!
5楼2011-07-03 13:43:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lilac_c

至尊木虫 (知名作家)

【答案】应助回帖

★ ★ ★ ★ ★
dubo(金币+5, 程序强帖+1): 感谢应助 2011-07-31 13:48:11
dubo: 增加了程序的注释。程序的注释其实比程序跟重要!!这是需要鼓励的!!希望大家多写一些程序的注释 2011-07-31 13:54:33
Sub POLINT(XA(), YA(), N, X, Y, DY)  子程序
    Dim C(10), D(10)  定义两个数组
    NS = 1      
    DIF = Abs(X - XA(1))   ! abstract 绝对值.
    For I = 1 To N   循环体开始,从1,到n, 这个n赋值是由外部传入,可以看子程序对应变量.
        DIFT = Abs(X - XA(I))  
        If DIFT < DIF Then 如果dift小于dif 
            NS = I
            DIF = DIFT
        End If   ! end if 是 if  ...endif 不能缺少.
        C(I) = YA(I)
        D(I) = YA(I)
    Next I
    Y = YA(NS)
    NS = NS - 1
    For M = 1 To N - 1
        For I = 1 To N - M
            HO = XA(I) - X
            HP = XA(I + M) - X
            W = C(I + 1) - D(I)
            DEN = HO - HP
            If DEN = 0# Then!!这个地方看不很明白,以前自学的BASIC都忘记差不多拆.
                Print "PAUSE"
                Exit Sub
            End If
            DEN = W / DEN
            D(I) = HP * DEN
            C(I) = HO * DEN
        Next I
        If 2 * NS < N - M Then
            DY = C(NS + 1)
        Else
            DY = D(NS)
            NS = NS - 1
        End If
        Y = Y + DY
    Next M
End Sub
我生活在一个经常爆发地震的年代
6楼2011-07-04 02:11:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 狼馨520 的主题更新
信息提示
请填处理意见