Al aprender VB, existe un programa para "encontrar las raíces de una ecuación cuadrática". ¿Por qué el resultado calculado es diferente al del libro y incorrecto? ¡Mira el código del programa!
Entonces hay un error en el programa CmdComputer_Click en el programa, y x2 es escrito por error como xl2. Debe cambiarse a:
Private sub-CmdComputer_Click()
a = Val(txta.text)
b = Val. (txtb.text)
c = Val(txtc. Text)
d = b^2 - (4 * a * c)
XL = ( -b+SQR (D))/(2 * A)'Aquí P se cambia a -b
X2 = (-b-sqr (d))/(2 * a) Aquí P se cambia a -b, xI2 se cambia a X2 p>
msgbox " XL = "+STR(XL)+"+" >O cambiar a:
Sub-CmdComputer_Click() privado p>
a = Val(txta.text)
b = Val(txtb.text)
c = Val(txtc.text)
d = b ^ 2 - (4 * a * c)
p = -b / (2 * a)
Xl = p+sqr (d)/(2*a )'Aquí no es necesario dividir p por 2*a.
X2 = p-sqr (d)/(2. *a)'Aquí no es necesario dividir p por 2*a.
msgbox " XL = "+STR(XL)+"+" X2 = "+STR(X2)," dos ecuaciones cuadráticas"
Conector final
Además, para evitar que la ecuación tenga raíces reales, puede agregar una declaración de elección, que se cambia a:
Private sub-CmdComputer_Click()
a = Val(txta.Text)
b = Val(txtb.Text)
c = Val(txtc.Text)
d = b ^ 2 - ( 4 * a * c)
Seleccione el caso d' para determinar si △ es mayor que 0.
El caso es & gt0
xl = (- b + Cuadrado(d)) / (2 * a)
x2 = (- b - Cuadrado(d)) / (2 * a)
msgbox " XL = "+STR (XL)+"+" X2 = "+STR(X2),"Dos ecuaciones cuadráticas"
Caso 0
xl = - b / ( 2 * a)
MsgBox "xl=x2="+Str(xl),"Dos ecuaciones cuadráticas"
El caso es & lt0
MsgBox "La ecuación cuadrática no tiene raíces reales ", "La ecuación cuadrática no tiene raíces reales"
Finalizar selección
Finalizar conector