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

计算一元二次方程

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

#include <stdio.h>
#include <math.h>
int main() 
{
    double a=0,b=0,c=0;
    double x1=0,x2=0,o=0;
    double shi=0,xu=0;
    while(scanf("%lf %lf %lf",&a,&b,&c)!=EOF)
    {
        o=b*b-(4*a*c);
        x1=((-b)+sqrt(o))/(2*a);
        x2=((-b)-sqrt(o))/(2*a);
        shi=-b/(2*a);
        xu=sqrt(-o)/(2*a);
        if(shi==-0.00)
        {
            shi=0.00;
        }
        if(xu==-0.00)
        {
             xu=0.00;
        }
         if(x1==-0.00)
        {
            x1=0.00;
        }
        if(x2==-0.00)
        {
            x2=0.00;
        }
        if(a==0)
        {
            printf("Not quadratic equation\n");
        }
        else if(o==0)
        {
            printf("x1=x2=%.2lf\n",x1);
        }
        else if(o>0)
        {
            printf("x1=%.2lf;x2=%.2lf\n",x2,x1);
        }
        else if(o<0)
        {
            printf("x1=%.2lf-%.2lfi;x2=%.2lf+%.2lfi\n",shi,xu,shi,xu);
        }

    }

    return 0;
}

全部评论

相关推荐

投递华为等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务