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

计算一元二次方程

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

#include <stdio.h>
#include <math.h>
int main() {
    double a,b,c;
    while(~scanf("%lf %lf %lf",&a,&b,&c))
    {
        double det=b*b-4*a*c;//求△ 
        if(a!=0)
        {
            double x1=((-b)-sqrt(det))/(2*a);
            double x2=((-b)+sqrt(det))/(2*a);
            double S=(-b)/(2*a);
            double M=sqrt(-det)/(2*a);
            if(det==0)
                printf("x1=x2=%.2lf\n",x1+0);//这里加0就能避免出现-0.00不是很理解
            if(det>0)                        //有没有大佬解释一下@_@
                printf("x1=%.2lf;x2=%.2lf\n",x1,x2);
            if(det<0)
                printf("x1=%.2lf-%.2lfi;x2=%0.2lf+%.2lfi\n",S,M,S,M);
        }
        else
            printf("Not quadratic equation\n");
    }
    return 0;
}

全部评论

相关推荐

Rac000n:淘天-客户运营部-AI研发工程师,智能客服方向,暑期实习招聘,欢迎联系
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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