用VB编程解一个一元四次方程 运用牛顿法或二分法
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/08/02 06:08:37
用VB编程解一个一元四次方程 运用牛顿法或二分法
方程如下:AX^4-BX^3-C=0
ABC是常数
重谢
方程如下:AX^4-BX^3-C=0
ABC是常数
重谢
![用VB编程解一个一元四次方程 运用牛顿法或二分法](/uploads/image/z/16301230-70-0.jpg?t=%E7%94%A8VB%E7%BC%96%E7%A8%8B%E8%A7%A3%E4%B8%80%E4%B8%AA%E4%B8%80%E5%85%83%E5%9B%9B%E6%AC%A1%E6%96%B9%E7%A8%8B+%E8%BF%90%E7%94%A8%E7%89%9B%E9%A1%BF%E6%B3%95%E6%88%96%E4%BA%8C%E5%88%86%E6%B3%95)
'牛顿迭代:
Private Sub Form_Load()
parstr = InputBox("输入A,B,C的值,逗号(英文)隔开")
par = Split(parstr,",")
If UBound(par) < 2 Then MsgBox "缺少参数":Exit Sub
For i = 0 To 2
If IsNumeric(par(i)) = False Then MsgBox "参数非数字":Exit Sub
Next
Dim x0,y0 As Double:x0 = 2 '迭代初值
Do
y0 = par(0) * x0 ^ 4 - par(1) * x0 ^ 3 - par(2)
yy = (4 * par(0) * x0 ^ 3 - 3 * par(1) * x0 ^ 2)
If yy = 0 Then MsgBox "死循环,将退出.请尝试重新设置迭代初值":Exit Sub
x0 = x0 - (y0 / yy)
Loop Until Abs(y0) < 0.00001
MsgBox "x=" & x0
End Su
Private Sub Form_Load()
parstr = InputBox("输入A,B,C的值,逗号(英文)隔开")
par = Split(parstr,",")
If UBound(par) < 2 Then MsgBox "缺少参数":Exit Sub
For i = 0 To 2
If IsNumeric(par(i)) = False Then MsgBox "参数非数字":Exit Sub
Next
Dim x0,y0 As Double:x0 = 2 '迭代初值
Do
y0 = par(0) * x0 ^ 4 - par(1) * x0 ^ 3 - par(2)
yy = (4 * par(0) * x0 ^ 3 - 3 * par(1) * x0 ^ 2)
If yy = 0 Then MsgBox "死循环,将退出.请尝试重新设置迭代初值":Exit Sub
x0 = x0 - (y0 / yy)
Loop Until Abs(y0) < 0.00001
MsgBox "x=" & x0
End Su