Function insert_L_MY(xArray() As Variant, yArray() As Variant, x As Double) As Double
Dim n As Integer
Dim i As Integer
Dim j As Integer
Dim L As Double
Dim result As Double
n = UBound(xArray) ' 假设xArray和yArray的大小相同,并且是一维数组
result = 0
For i = 1 To n
L = 1
For j = 1 To n
If j <> i Then
L = L * (x - xArray(j)) / (xArray(i) - xArray(j))
End If
Next j
result = result + L * yArray(i)
Next i
insert_L_MY = result
End Function
Private Sub test()
Dim x(), y()
x = Array(520, 540, 566, 588)
y = Array(1.5, 0.8, 0, -1)
Dim a As Double
a = 530
y1 = insert_L_MY(x, y, a)
Debug.Print y1
End Sub
06-06
9604
