如何用c程序求一元二次方程的根

如何用c程序求一元二次方程的根,第1张

只含有一个未知数(一元),并且未知数项的最高次数是2(二次)的整式方程叫做一元二次方程。标准形式为:ax²+bx+c=0(a≠0)。

一、开平方法。

形如x²=p 或(nx+m)²=p(p≥0)的一元二次方程可采用开平方法解一元二次方程。

二、配方法。

将一元二次方程配成(x+m)²=n的形式,再利用直接开平方法求解的方法。

用配方法解一元二次方程的步骤:

①把原方程化为一般形式;

②方程两边同除以二次项系数,使二次项系数为1,并把常数项移到方程右边;

③方程两边同时加上一次项系数一半的平方;

④把左边配成一个完全平方式,右边化为一个常数;

⑤进一步通过直接开平方法求出方程的解,如果右边是非负数,则方程有两个实数根。

用求根公式法解一元二次方程的一般步骤为:

①把方程化成一般形式 ,确定a,b,c的值(注意符号);

②求出判别式的值,判断根的情况;

③在Δ≥0的前提下,把a、b、c的值代入公式。

希望我能帮助你解疑释惑。

#include<stdioh>

#include<mathh>

int main()

{

double a,b,c,x1,x2,d;

scanf("%lf%lf%lf",&a,&b,&c);

if(a==0)

{

if(b==0)

{

if(0==c)

{

printf("恒等式:0+0+0=0\n");

}

else

{

printf("输入错误,不能构成等式!\n");

}

}

else

{

printf("只能构成一元一次方程,x=%2lf\n",0==-(double)c/b 0 : -(double)c/b);

}

}

else

{

d=bb-4ac;

if(d<0)

{

printf("x1=%2lf+%2lfi\nx2=%2lf-%2lfi\n",(-b)/(20a),sqrt(-d)/(20a),(-b)/(20a),sqrt(-d)/(20a));

}

else if(d==0)

{

printf("x1=x2=%2lf\n",(-b)/(20a));

}

else

{

x1=(-b+sqrt(d))/(20a);

x2=(-b-sqrt(d))/(20a);

printf("x1=%2lf\nx2=%2lf\n",x1,x2);

}

}

return 0;

}

#include <iostream> 。

#include <cmath>。

using namespace std。

int main()。

{float a,b,c;float x1,x2; cin>a>>b>>c;float dlt=bb-4ac;if(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/a;x2=sqrt(-dlt)/2/a;cout<<a<<"x^2+"<<b<<"x+"<<c<<"=0有两个虚根:"。

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

return 0。

成立条件:

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

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

②只含有一个未知数。

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

以上就是关于如何用c程序求一元二次方程的根全部的内容,包括:如何用c程序求一元二次方程的根、编写c语言程序,求解一元二次方程ax²+bx+c=0,系数a,b,c用键盘输入、c语言解一元二次方程是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9350445.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存