找到4次多项式的x截距

时间:2016-05-17 20:33:00

标签: vba excel-vba excel

我有一个4度多项式,我试图使用以下代码找到第一个x截距:

Function Findintercept(results2 As Variant) As Double
    Dim equation As Double, x As Double
    'equation = results2(1)*x^4 + results2(2)*x^3 + results2(3)*x^2 + results2(4)*x + results2(5)
    x = 0
    equation = results(1) * x ^ 4 + results(2) * x ^ 3 + results(3) * x ^ 2 + results(4) * x + results(5)
    While (equation > 0.01 Or equation < -0.01)
        x = x + 0.001
        equation = results2(1) * x ^ 4 + results2(2) * x ^ 3 + results2(3) * x ^ 2 + results2(4) * x + results2(5)
    Wend
    Findintercept = x
End Function

这个想法是保持循环遍历x的所有值,直到等式变为0然后返回x的这个值。我的逻辑有用吗?我只需要第一个x拦截!结果不一定是0,只是足够接近?

results2包含4次多项式的系数

Sample values of results2 = {-933302, 22776, 1408.6, -95.787, 1.3348}

该函数应该找到x截距..对于上面的样本大约1.26?

0 个答案:

没有答案