题解 | #计算一元二次方程#
计算一元二次方程
https://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextDouble()) { // 注意 while 处理多个 case
double a = in.nextDouble();
double b = in.nextDouble();
double c = in.nextDouble();
double d=b*b-4*a*c;
if(a==0){
System.out.printf("Not quadratic equation");
}else if(d==0){
double m=-b/(2*a);
if(b==0)
m=0.00;
System.out.printf("x1=x2=%.2f",m);
}else if(d>0){
System.out.printf("x1=%.2f;x2=%.2f",(-b-Math.sqrt(d))/(2*a),(-b+Math.sqrt(d))/(2*a));
}else{
double m=-b/(2*a);
if(b==0)
m=0.00;
double n=Math.sqrt(-d)/(2*a);
System.out.printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi",m,n,m,n);
}
System.out.println();
}
}
}