题解 | 计算一元二次方程

计算一元二次方程

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

#include <stdio.h>
#include <math.h>
int main() {
    float a,b,c;
    float x1,x2;
    float delta;
    float xu1,xu2;
    while(scanf("%f %f %f",&a,&b,&c)!=EOF)
{  
    if(a==0)
    {
        printf("Not quadratic equation");
    }
    else
{
    delta = pow(b,2)-4*a*c;
    if(delta == 0)
    {
     x1 = x2 =-b /2 /a;
     if(x1==0)
     {
     printf("x1=x2=0.00\n");   
     }
     else{
     printf("x1=x2=%.2f\n",x1);
     }
    }
    if(delta > 0)
    {
      x1 = (-b-sqrt(delta)) /(2*a);
      x2 = (-b+sqrt(delta)) /(2*a); 
      printf("x1=%.2f;x2=%.2f\n",x1,x2); 
    }
    if(delta <0)
    {
        x1 = -b/(2*a);
        xu1 = sqrt(-delta)/(2*a);
        x2 = -b/(2*a);
        xu2 = +sqrt(-delta)/(2*a);
        printf("x1=%.2f-%.2fi;x2=%.2f+%.2fi\n",x1,xu1,x2,xu2);
    }
}
}
    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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