题解 | #计算一元二次方程#
计算一元二次方程
https://www.nowcoder.com/practice/7da524bb452441b2af7e64545c38dc26
#include <stdio.h>
#include<stdio.h>
int main()
{
double a, b, c;
double x = 0,derta = 0;
while (scanf("%lf %lf %lf ", &a, &b, &c) != EOF)
{
derta = b*b - 4*a*c;
if(a == 0)
{
printf("Not quadratic equation\n");
}
else
{
if(derta == 0)
{
if(-b/(2.0*a) == 0)
printf("x1=x2=0.00\n");
else
printf("x1=x2=%.2lf\n",-b/(2.0*a));
}
else if(derta > 0)
{
printf("x1=%.2lf;x2=%.2lf\n",(-b-sqrt(derta))/(2.0*a),(-b+sqrt(derta))/(2.0*a));
}
else
{
printf("x1=%.2lf%.2lfi;x2=%.2lf+%.2lfi\n",-b/(2.0*a),-sqrt(-derta)/(2.0*a),-b/(2.0*a),sqrt(-derta)/(2.0*a));
}
}
}
return 0;
}