⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inspline3mainmodule.bas

📁 科学与工程数值计算算法(Visual Basic版)一书的源代码。对科学研究者自己开发领域内计算程序极具参考价值。
💻 BAS
字号:
Attribute VB_Name = "MainModule"
Sub Main()
    Dim m As Integer, n As Integer, i As Double, j As Double
    Dim s As Double, u As Double
    Dim str As String
        
    ' 结点数
    n = 37
    
    ' 插值点数
    m = 36
    
    ' 分配内存
    ReDim x(n) As Double, y(n) As Double, dy(n) As Double, ddy(n) As Double
    ReDim t(m) As Double, z(m) As Double, dz(m) As Double, ddz(m) As Double
    
    ' 结点的值与结点的函数值
    For i = 1 To n
        x(i) = (i - 1) * 6.2831852 / 36#
        y(i) = Sin(x(i))
    Next i
    
    ' 待插值点的值
    For i = 1 To m
        t(i) = (0.5 + i - 1) * 6.2831852 / 36#
    Next i
  
    ' 插值
    s = INSpline3(n, x, y, dy, ddy, m, t, z, dz, ddz)
    
    str = "x(i)       y(i)=sin(x)       dy(i)=cos(x)       ddy(i)=-sin(x)" & Chr(13) & Chr(13)
    str = str & Format(x(1), "#####0.00000") & "    " & Format(y(1), "#####0.00000") & "    " & Format(dy(1), "#####0.00000") & "    " & Format(ddy(1), "#####0.00000") & Chr(13)
    For i = 1 To m
        u = t(i) * 36# / 0.62831852
        str = str & Format(u, "#####0.00000") & "    " & Format(z(i), "#####0.00000") & "    " & Format(dz(i), "#####0.00000") & "    " & Format(ddz(i), "#####0.00000") & Chr(13)
        u = x(i + 1) * 36# / 0.62831852
        j = i + 1
        str = str & Format(u, "#####0.00000") & "    " & Format(y(j), "#####0.00000") & "    " & Format(dy(j), "#####0.00000") & "    " & Format(ddy(j), "#####0.00000") & Chr(13)
    Next i
    
    str = str & Chr(13) & "s = " & s & Chr(13) & Chr(13)
    
    ' 在窗体的RichText控件中显示结果
    Form1.RichTextBox1.Text = str
    Form1.Show
        
End Sub


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -