#include<stdio.h>
#include<math.h>
int main()
{
double a,b,c,dics,x1,x2,realpart,imagpart,p,q;
scanf("%lf%lf%lf",&a,&b,&c);
p=-b/(2*a);
q=sqrt(b*b-4*a*c)/(2*a);
dics=b*b-4*a*c;
if (fabs(a)<=1e-6)
printf("不是二次方程");
else
{
if(fabs(dics)<=1e-6)
printf("有两个相等实根:%8.4f\n",-b/2*a);
else if(dics>1e-6)
{
x1=p+q;
x2=p-q;
printf("有两个不等实根:%8.4f %8.4f\n",x1,x2);
}
else
{
realpart=-b/(2*a); /*realpart是复根的实部*/
imagpart=sqrt(-dics)/(2*a); /*imagapart是复根的虚部*/
printf("有两个共轴复根:\n");
printf("%8.4f+%8.4fi\n",realpart,imagpart);
printf("%8.4f-%8.4fi\n",realpart,imagpart);
}
}
return 0;
}
求a*x*x+b*x+c=0方程的解
于 2022-04-05 14:53:10 首次发布