c语言求一元二次方程的根

Python09

c语言求一元二次方程的根,第1张

#include <iostream>

#include <cmath>

using namespace std

int main()

{float a,b,cfloat x1,x2cin>a>>b>>cfloat dlt=b*b-4*a*cif(dlt>=0){x1=-b/2/a+sqrt(dlt)。

/2/ax2=-b/2/a-sqrt(dlt)/2/a。

cout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个实根:"cout<<"x1="<<x1<<",x2="<<x2<<endl}

else

{x1=-b/2/ax2=sqrt(-dlt)/2/acout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个虚根:"。

cout<<"x="<<x1<<"+/-"<<x2<<"i"<<endl}

return 0。

扩展资料:

成立条件:

一元二次方程成立必须同时满足三个条件:

①是整式方程,即等号两边都是整式,方程中如果有分母;且未知数在分母上,那么这个方程就是分式方程,不是一元二次方程,方程中如果有根号,且未知数在根号内,那么这个方程也不是一元二次方程(是无理方程)。

②只含有一个未知数;

③未知数项的最高次数是2。

参考资料来源:百度百科-c语言

用C语言编写求一元二次方程根的程序,条件判断的充分,步骤如下:

void main()

{

float a,b,c,delta

scanf("%f%f%f",&a,&b,&c)

if(a!=0)

{

delta=b*b-4*a*c

if(delta==0)

printf("x1=x2=%7.2f",-b/(2*a))

else if(delta>0)

{

printf("x1=%7.2f",(-b+sqrt(delta))/(2*a))

printf("x2=%7.2f",(-b-sqrt(delta))/(2*a))

}

else

{

printf("x1=%7.2f+i%7.2f",-b/(2*a),sqrt(-delta)/(2*a))

printf("x2=%7.2f-i%7.2f",-b/(2*a),sqrt(-delta)/(2*a))

}

}

else if(b!=0)

printf("x=%7.2f",-c/b)

else if(c==0)

printf("0=0,x为任意解

")

else

printf("%f=0,error!",c)

}