题解 | #计算一元二次方程#

计算一元二次方程

http://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26

import java.util.Scanner;
//不知道为什么总出现-0,似乎题目新加了数据
public class Main{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        double result;
        while(scan.hasNextLine()){
            String[] data = scan.nextLine().trim().split(" ");
            double a = Double.parseDouble(data[0]);
            double b = Double.parseDouble(data[1]);
            double c = Double.parseDouble(data[2]);
            double d = b * b - 4 * a * c;
            if(a == 0){
                System.out.println("Not quadratic equation");
            }else if(d > 0){
                double x1 = ((-b) - Math.sqrt(d)) / (2 * a);
                double x2 = ((-b) + Math.sqrt(d)) / (2 * a);
                System.out.printf("x1=%.2f;x2=%.2f%n", x1, x2);
            }else if(d == 0){
                double x = (-b) / (2 * a);
                if(x==0)
                {
                    System.out.println("x1=x2=0.00");
                }else{
                    System.out.printf("x1=x2=%.2f%n", x);
                }
                
            }else if(d < 0){
                double shi;
                if(b == 0){
                    shi = 0;
                }else{
                    shi = -b / (2 * a);
                }
                double xu = Math.sqrt(-d) / (2 * a);
                if(xu<0)
                {
                    System.out.printf("x1=%.2f%.2fi;x2=%.2f+%.2fi%n", shi, xu, shi, Math.abs(xu));
                }
                else{
                    System.out.printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi%n", shi, xu, shi, xu);
            }
        }
    }
}
}

全部评论
应该是出现的一个小于0但是在复数那边接近0点2进制的很小的数大致比0.01小很多,所以就显示-0.00这样
点赞 回复 分享
发布于 2022-09-12 21:22 广西

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务