为什么两个带不带括号输出结果都一样,但是放到pta上就不对呢
import java.util.Scanner;
class QuadraticEquation{
public double a;
public double b;
public double c;
public QuadraticEquation(double a,double b,double c) {
this.a = a;
this.b = b;
this.c = c;
}
public double getA() {
return a;
}
public double getB() {
return b;
}
public double getC() {
return c;
}
public double getDiscriminant() {
double discriminant = b*b - 4*a*c;
return discriminant;
}
public double getRoot1() {
if (getDiscriminant() < 0)
return 0;
else {
double root1 = (-b + Math.sqrt(getDiscriminant())) / 2 * a;
return root1;
}
}
public double getRoot2() {
if (getDiscriminant() < 0)
return 0;
else {
double root2 = (-b - Math.sqrt(getDiscriminant())) / 2 * a;
return root2;
}
}
}
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
int a1 = scanner.nextInt();
int b1 = scanner.nextInt();
int c1 = scanner.nextInt();
QuadraticEquation equation = new QuadraticEquation(a,b,c);
System.out.println("equation discriminant is:"+(Math.pow(equation.getB(),2)-4*equation.getA()*equation.getC()));
if (equation.getDiscriminant() < 0){
System.out.println("The equation has no roots");
}else{
System.out.println("equation root1:"+equation.getRoot1());
System.out.println("equation root2:"+equation.getRoot2());
}
QuadraticEquation equation1 = new QuadraticEquation(a1,b1,c1);
System.out.println("equation1 discriminant is:"+(Math.pow(equation1.getB(),2)-4*equation1.getA()*equation1.getC()));
if (equation1.getDiscriminant() < 0){
System.out.println("The equation1 has no roots");
}else{
System.out.println("equation1 root1:"+equation1.getRoot1());
System.out.println("equation1 root2:"+equation1.getRoot2());
}
}
}