Dim a, b, c, x1, x2 As Single
Dim str As String
a = Val(InputBox("請輸入壹元二次方程的二次項系數"))
b = Val(InputBox("請輸入壹元二次方程的壹次項系數"))
c = Val(InputBox("請輸入壹元二次方程的常數項"))
If a = 0 Then
If c < 0 Then
str = b & "x" & c & "=0"
Else
str = b & "x+" & c & "=0"
End If
If MsgBox("妳輸入的方程為" & str & ",是否要求解?", vbOKCancel) = vbOK Then
If b = 0 Then
MsgBox "此方程無解!"
Else
x1 = -c / b
MsgBox "方程只有壹個解,x=" & x1
End If
End If
Else
If b < 0 Then
If c < 0 Then
str = a & "x^2" & b & "x" & c & "=0"
Else
str = a & "x^2" & b & "x+" & c & "=0"
End If
Else
If c < 0 Then
str = a & "x^2+" & b & "x" & c & "=0"
Else
str = a & "x^2+" & b & "x+" & c & "=0"
End If
End If
If MsgBox("妳輸入的方程為" & str & ",是否要求解?", vbOKCancel) = vbOK Then
If b ^ 2 - 4 * a * c < 0 Then
MsgBox "方程" & str & "無解!"
Else
If b ^ 2 - 4 * a * c = 0 Then
x1 = (-b + Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
MsgBox "方程" & str & "有兩個相等的解,x1=" & x1 & ",x2=" & x1
Else
x1 = (-b + Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
x2 = (-b - Sqr(b ^ 2 - 4 * a * c)) / (2 * a)
MsgBox "方程" & str & "有兩個不相等的解,x1=" & x1 & ",x2=" & x2
End If
End If
End If End If
End
End Sub