题解 | #计算一元二次方程#
计算一元二次方程
https://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26
double delta = b * b - (4 * a * c);
if(delta == 0){
double x = -b / (2 * a);
System.out.printf("x1=x2=%.2f", x == 0 ? 0.00 : x);
}else if(delta > 0){
double x1 = (-b - Math.sqrt(delta)) / (2 * a);
double x2 = (-b + Math.sqrt(delta)) / (2 * a);
System.out.printf("x1=%.2f;x2=%.2f", x1, x2);
}else{
double real = -b / (2 * a);
double image = Math.abs(Math.sqrt(-delta) / (2 * a));
System.out.printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi", real, image, real, image);
}
System.out.println();
if(delta == 0){
double x = -b / (2 * a);
System.out.printf("x1=x2=%.2f", x == 0 ? 0.00 : x);
}else if(delta > 0){
double x1 = (-b - Math.sqrt(delta)) / (2 * a);
double x2 = (-b + Math.sqrt(delta)) / (2 * a);
System.out.printf("x1=%.2f;x2=%.2f", x1, x2);
}else{
double real = -b / (2 * a);
double image = Math.abs(Math.sqrt(-delta) / (2 * a));
System.out.printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi", real, image, real, image);
}
System.out.println();
