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

计算一元二次方程

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

#include <stdio.h>
#include <math.h>

int main() {
    double a, b, c, delta, x1, x2, real, image;
    while (scanf("%lf %lf %lf", &a, &b, &c) != EOF) { // 注意 while 处理多个 case
        // 64 位输出请用 printf("%lld") to 
        if (0 == a){
            printf("Not quadratic equation\n");
        }
        else{
            delta = b*b - 4*a*c;
            if (0 == delta){
                x1 = x2 = (-b+sqrt(delta)) / (2*a);
                printf("x1=x2=%.2f\n", x1+0);
            }
            else if (delta > 0){
                x1 = (-b-sqrt(delta)) / (2*a);
                x2 = (-b+sqrt(delta)) / (2*a);
                printf("x1=%.2f;x2=%.2f\n", x1, x2);
            }
            else{
                real = b / (-2*a);
                // printf("real= %.2f\n", real);
                image = sqrt(-delta) / (2*a);
                printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n", real+0, image, real+0, image);
            }
        }
    }
    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 13:15
点赞 评论 收藏
分享
06-15 20:57
已编辑
门头沟学院 Java
CARLJOSEPH...:年轻人有傲气很正常,但是建议工作前洗净傲气。 说实在的,什么奖学金什么奖项的都很一般。尊重你的老师,在有时间的时候去上课,真遇到走不开的事,请态度端正地向你的老师说明情况,请求请假。我相信任何一个有师德的老师都会允许的(我的老师就是这样)。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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