一元二次方程求解

2023-05-02 14:10:33 浏览数 (2)

问题

通过键盘输入系数a,b,c,求一元二次方程的实根,要求判断有无实根

训练提示

ax^2 bx c=0,aneq 0 \Delta=b^2-4ac If quad Delta geq 0 quad Then \quad x_1=displaystyle frac{-b sqrt{b^2-4ac}}{2a} \quad x_2=displaystyle frac{-b-sqrt{b^2-4ac}}{2a}

参考答案

代码语言:javascript复制
public class help {
    public static void main(String[] args) {
        // 通过键盘输入系数a,b,c
        // 定义个扫描器
        Scanner sc = new Scanner(System.in);

        // 提示下用户
        System.out.println("请您输入a,b,c:");

        // 接收用户输入的三个系数
        double a = sc.nextDouble();
        double b = sc.nextDouble();
        double c = sc.nextDouble();

        // 判断用户输入的a是否等于0
        if (a != 0) {
            // 求一元二次方程的实根
            // 判别式判断是两个实根,一个实根还是无实根
            // ((Math.pow(b, 2)) - (4 * a * c))
            // b * b - 4 * a * c
            double temp = ((Math.pow(b, 2)) - (4 * a * c));
            // double temp = (b * b) - (4 * a * c);
            if (temp > 0) {
                // 有两个实数根
                double x1 = ((-b)   Math.sqrt(temp)) / (2 * a);
                double x2 = ((-b) - Math.sqrt(temp)) / (2 * a);
                System.out.println(x1);
                System.out.println(x2);
            } else if (temp == 0) {
                // 有一个实数根
                double x1 = ((-b)   Math.sqrt(temp)) / (2 * a);
                System.out.println(x1);
            } else {
                // 没有实数根
                System.out.println("没有实数根");
            }
        } else {
            System.out.println("a不能等于0");
        }
    }
}

0 人点赞