vb 二元一次方程求解 为什么不对?

来源:百度知道 编辑:UC知道 时间:2024/06/01 01:16:29
Private Sub Command1_Click()
Dim a As Single
Dim b As Single
Dim c As Single
Dim d As Single
Dim x1 As Single
Dim x2 As Single
a = Text1.Text
b = Text2.Text
c = Text3.Text
d = b * b - 4 * a * c
If d >= 0 Then
x1 = (-b + (spr(d))) / (2 * a)
x2 = (-b - (spr(d))) / (2 * a)
Text4.Text = x1
Text5.Text = x2
Else
x1 = "无实数解"
x2 = "无实数解"
Text4.Text = x1
Text5.Text = x2
End If

End Sub

错哪?

把spr改成sqr

Private Sub Command1_Click()
Dim a As Single
Dim b As Single
Dim c As Single
Dim d As Single
Dim x1
Dim x2
a = Text1.Text
b = Text2.Text
c = Text3.Text
d = b * b - 4 * a * c
If d >= 0 Then
x1 = (-b + Sqr(d)) / (2 * a)
x2 = (-b - Sqr(d)) / (2 * a)
Text4.Text = x1
Text5.Text = x2
Else
x1 = "无实数解"
x2 = "无实数解"
Text4.Text = x1
Text5.Text = x2
End If

End Sub
把我的代码COPY去看看,应该就对了

你将 x1,x2 声明为 Single ,后面又赋值为字符串(x1 = "无实数解"),会出现类型不匹配错误。

建议将:
Dim x1 As Single
Dim x2 As Single

改为:
dim x1,x2