Cómo escribir el problema de búsqueda de raíces de una ecuación cuadrática en Java
clase pública SquareEquation {
doble a, b, c;
conjunto vacío públicoA(doble a) {
this.a = a;
}
conjunto vacío públicoB(doble b) {
this.b = b;
}
public void setC(doble c) {
this.c = c;
}
public double getRootOne() {
doble disco = calcularValidDisk();
return (-b + Math.sqrt(disco)) / (2 * a);
}
público doble getRootTwo() {
doble disco = calcularValidDisk();
retorno (-b - Math.sqrt(disco)) / (2 * a);
}
doble privado calcularValidDisk() {
if (a == 0) {
lanzar nueva EquationException("No es una ecuación cuadrática" , EquationException.NONE_EQUATION);
}
doble disco = b * b - 4 * a * c;
if (disco < 0) { p> p>
lanzar nueva EquationException("No hay raíz real", EquationException.NO_REALROOT);
}
devolver disco;
} p>
}
Información ampliada
Por ejemplo, la ecuación es x al cuadrado + 3x + 2 = 0
Prueba de clase pública
{
public static void main(String []args)
{
double a=1;//coeficiente de término cuadrático
double b=3;//coeficiente de término lineal
double c=2;//término constante
double s=b*b-4*a*c ;
if(s<0)
{
System.out.print("b*b-4ac<0, ¡la ecuación no tiene solución! ");
retorno;
}
doble ss=Math.sqrt(s);
doble x1=(-1 *b-ss)/( 2*a);
doble x2=(-1*b+ss)/(2*a);
System.out.println( "x1="+x1) ;
System.out.println("x2="+x2);
}
}
Referencia: Enciclopedia Baidu Java
Ecuación cuadrática de la Enciclopedia Baidu