编写lisp程序解一元二次方程_VB编程:编写求解一元二次方程 ax2+bx+c=0 的过程,要求a、b、c及解X1、X2都以参数传送的方式与主程序交换数据,输入a,b,c和输出X1,X2的操作入放...

VB编程:编写求解一元二次方程 ax2+bx+c=0  的过程,要求a、b、c及解X1、X2都以参数传送的方式与主程序交换数据,输入a,b,c和输出X1,X2的操作入放在主程序中。

解:一元二次方程 ax2+bx+c=0  的解通常有以下几种可能。

(1)当a=0时,不是二次方程,不进行处理。

(2)当b2-4ac=0时,方程有两个相等实根。

(2)当b2-4ac>0时,方程有两个不等实根。

(2)当b2-4ac<0时,方程有两个共轭实根。

求解一元二次方程的通用过程如下:

Sub equa(a As Single, b As Single, c As Single, x1, x2)

If Abs(a) <= 0.000001 Then

MsgBox "该方程不是二次方程"

Exit Sub

Else

disc = b * b - 4 * a * c

End If

If Abs(disc) <= 0.000001 Then

Flag = 1

x1 = -b / (2 * a)

x2 = -b / (2 * a)

ElseIf disc > 0.000001 Then

Flag = 2

x1 = (-b + Sqr(disc)) / (2 * a)

x2 = (-b - Sqr(disc)) / (2 * a)

Else

Flag = 3

realpart = -b /


版权声明:本文为weixin_39942318原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。