C语言下一元二次方程的求根公式
2009-02-03 17:27
1291 查看
求ax2+bx+c=0方程的根,a,b,c由键盘输入,设b2-4ac>0。
求根公式为:
则x1=p+q
x2=p-q
源程序如下:
#include<math.h>
main()
{
float a,b,c,disc,x1,x2,p,q;
scanf(“a=%f,b=%f,c=%f”,&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2*a);
q=sqrt(disc)/(2*a);
x1=p+q;x2=p-q;
printf(“\nx1=% 5.2f\nx2=%5.2f\n”,x1,x2);
}
下面是一元二次方程求根公式的推导
配方法:
1.化二次系数为1.
x^2+(b/a)x+c/a=0
2两边同时加上一次项系数一半的平方;
x^2+(b/a)x+(b/2a)^2=(b/2a)^2-c/a
3用直接开平方法求解.
{x+(b/2a)}^2=(b^2-4ac)/4a^2
当
b^2-4ac>=0 (a>0)时
x+b/2a=+ -根号下{(b^2-4ac)/4a^2}
x=-b/2a+ -根号下{(b^2-4ac)/4a^2}=-b+ -根号下b^2-4ac /2a
所以、ax2+bx+c=0(a≠0)中.
若b=0,方程有两个互为相反数实根.
若c=0,方程有一根为零.
求根公式为:
则x1=p+q
x2=p-q
源程序如下:
#include<math.h>
main()
{
float a,b,c,disc,x1,x2,p,q;
scanf(“a=%f,b=%f,c=%f”,&a,&b,&c);
disc=b*b-4*a*c;
p=-b/(2*a);
q=sqrt(disc)/(2*a);
x1=p+q;x2=p-q;
printf(“\nx1=% 5.2f\nx2=%5.2f\n”,x1,x2);
}
下面是一元二次方程求根公式的推导
配方法:
1.化二次系数为1.
x^2+(b/a)x+c/a=0
2两边同时加上一次项系数一半的平方;
x^2+(b/a)x+(b/2a)^2=(b/2a)^2-c/a
3用直接开平方法求解.
{x+(b/2a)}^2=(b^2-4ac)/4a^2
当
b^2-4ac>=0 (a>0)时
x+b/2a=+ -根号下{(b^2-4ac)/4a^2}
x=-b/2a+ -根号下{(b^2-4ac)/4a^2}=-b+ -根号下b^2-4ac /2a
所以、ax2+bx+c=0(a≠0)中.
若b=0,方程有两个互为相反数实根.
若c=0,方程有一根为零.
相关文章推荐
- 一元二次方程求根公式推导过程
- 一元二次方程求根公式的推导
- 求一元二次方程求根公式与韦达定理.
- 4、输入一元二次方程的三个系数,求根。
- C语言实验——一元二次方程Ⅱ
- 【C语言】一元二次方程的解
- 用C求解一元二次方程的解,遇到的问题及解决办法 分类: C语言 2012-03-13 00:26 3094人阅读 评论(0) 收藏
- 变步长梯形求积公式 c语言实现 数值积分
- C语言(1)--解一元二次方程、将整数第五位清零、说谎、放鞭炮
- 第十一周:C语言:牛顿迭代求根
- c语言解一元二次方程
- C语言进阶之路------用3个函数解出一元二次方程的根
- C语言简单编程之一元二次方程求解
- C语言计算数学公式
- C语言实验——一元二次方程Ⅱ
- c语言:一元二次方程的计算
- [每天一点C语言]根据公式C = (5/9)(F-32)打印华氏温度与摄氏温度对应表
- 8051单片机波特率计算公式(配套C语言例程)
- 龙贝格求积公式 c语言实现 数值积分
- 求一元二次方程求根公式与韦达定理.