一元三次方程计算机解法 VB

来源:百度知道 编辑:UC知道 时间:2024/06/28 16:15:00

哈哈哈,又问啦?
划分区间之后,按我短信里给你说的,分别求取各个根。

Dim dblSan As Double = CDbl(InputBox("三次方的项"))
Dim dblEr As Double = CDbl(InputBox("二次方的项"))
Dim dblYi As Double = CDbl(InputBox("一次方的项"))
Dim dblCh As Double = CDbl(InputBox("常数项"))
If dblSan <> 1 Then
dblSan = 1
dblEr /= dblSan
dblYi /= dblSan
dblCh /= dblSan
End If
Dim dblP As Double = (3 * dblYi - dblEr ^ 2) / 9
Dim dblQ As Double = ((9 * dblEr * dblYi) - (27 * dblYi - 2 * dblEr ^ 3)) / 54
Dim dblS As Double = (dblQ + (dblP ^ 3 + dblQ ^ 2) ^ 0.5) ^ (1 / 3)
Dim dblT As Double = (dblQ - (dblP ^ 3 + dblQ ^ 2) ^ 0.5) ^ (1 / 3)
Dim dblD As Double = dblP ^ 3 + dblQ ^ 2

If dblD > 0 Then
Dim X1 As String = CStr(dblS + dblT - (dblEr / 3))
Dim X2 As String = CStr((-(dblS + dblT) / 2) - (dblEr / 3)) & "+i×3^0.5 ×" & CStr((dblS - dblT) / 2)
Dim X3 As String = CStr((-(dblS + db