作业帮 > 数学 > 作业

求一元二次方程阿ax2(方)+bx+c=0的根(包括实根和复根)

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/05/14 23:37:58
求一元二次方程阿ax2(方)+bx+c=0的根(包括实根和复根)
急.
以下是核心算法:其中Text1,Text2,Text3是三个文本输入框,接受a,b,c三个系数.x1,x2为根
Dim a As Single,b As Single,c As Single,d As Single,ds As Single
Dim x1 As String,x2 As String
a = Val(Text1.Text)
b = Val(Text2.Text)
c = Val(Text3.Text)
d = b * b - 4 * a * c
ds = Sqr(Abs(d))
If d > 0 Then
x1 = Str((-b + ds) / 2 * a)
x2 = Str((-b - ds) / 2 * a)
ElseIf d = 0 Then
x1 = Str(-b / 2 * a):x2 = x1
Else
b = Round(-b / (2 * a),7):c = Round(ds / (2 * a),7)
x1 = Str(b) + "+" + Str(c) + "i"
x2 = Str(b) + "-" + Str(c) + "i"
End If