从键盘输入一元二次方程的三个系数a、b、c,求方程的根.考虑二次项系数是否为零和判别式正负adasdasdasdasdasdasdasdasdasdadadadadada晕 忘了说了 用C语言编程序
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 13:40:22
从键盘输入一元二次方程的三个系数a、b、c,求方程的根.考虑二次项系数是否为零和判别式正负adasdasdasdasdasdasdasdasdasdadadadadada晕 忘了说了 用C语言编程序
从键盘输入一元二次方程的三个系数a、b、c,求方程的根.考虑二次项系数是否为零和判别式正负
adasdasdasdasdasdasdasdasdasdadadadadada
晕 忘了说了 用C语言编程序
从键盘输入一元二次方程的三个系数a、b、c,求方程的根.考虑二次项系数是否为零和判别式正负adasdasdasdasdasdasdasdasdasdadadadadada晕 忘了说了 用C语言编程序
一、知识要点对于一元二次方程ax2+bx+c=0 (a≠0) 总有 x1+x2=- ,x1·x2= ,其中x1、x2是方程的两根.
它的逆定理也是成立的,即如果两个数x1和x2,满足x1+x2=- ,x1·x2= ,那么x1,x2是方程ax2+bx+c=0 (a≠0)的两个根.这是根与系数的关系定理,又称韦达定理.
二、例题分析
1、已知一元二次方程的一个根,求出另一个根以及字母系数的值
例1、已知方程x2-6x+m2-2m+5=0一个根为2,求另一个根及m的值
分析:本题通常有两种做法,一是根据方程根的定义,把x=2代入原方程,先求出m的值,再通过解方程求另一个根;二是利用一元二次方程的根与系数的关系求出另一个根及m的值.
解法一:把x=2代入原方程,得
22-6×2+m2-2m+5=0
即 m2-2m-3=0
解得m1=3 m2=-1
当m1=3 m2=-1时,原方程都化为
x2-6x+8=0
∴x1=2 x2=4
∴方程的另一个根为4,m的值为3或-1.
解法二:设方程的另一个根为x.
则
∴ 或
2、判别一元二次方程两根的符号.
例1、不解方程,判别2x2+3x-7=0两根的符号
分析:因为二次项系数,一次项系数,常数项皆为已知,可求根的判别式△,但△只能用于判定根存在与否,若判定根的正负,则需要考察x1·x2 或 x1+ x2的正负情况.
∵△=32-4×2×(-7)=650
∴方程有两个不相等的实数根 设方程的两个根为x1,x2,
∵x1·x2= =- 0
∴原方程有两个异号的实数根.
说明:判别根的符号,需要“根的判别式”,“根与系数的关系”结合起来进行确定.另外本题中x1·x2<0,可判定根为一正一负,
若x1·x20,仍需考虑x1+ x2的正负,从而判别是两个正根还是两个负根.
例2、当m为什么实数时,关于x的二次方程mx2-2(m+1)x+m-1=0的两个根都是正数.
分析:正、负根的问题应这样想:如正数根,应确保两根之和大于零,两根之积大于零,根的判别式大于等于零.
设方程的二根为x1,x2,且x10,x20,
则有
由 △=[-2(m+1)]2-4m(m-1)≥0 解得:m≥-
∵m≠0,∴m0或m0,
∴上面不等式组化为:
⑴ 或 ⑵
由⑴得 m1
⑵不等式组的解集为空集.∴m1
∴当m1时,方程的两个根都是正数.
说明:当二次项系数含有字母时,不要忘记a≠0的条件.
例3、k为何值时,方程2(k+1)x2+4kx+3k-2=0
(1)两根互为相反数
(2)两根互为倒数
(3)有一根为零,另一根不为零.
分析:两根“互为相反数”、“互为倒数”,“有一根为零,另一根不为零”等是对两根的性质要求,在满足这个要求的条件下,求待定字母的取值.方程的根互为相反数,则x1=-x2,即x1+x2=0;互为倒数,则x1= ,即x1·x2=1,但要注意考察判别式△≥0.
设方程的两根为x1,x2,
则x1+x2=- =-
x1x2=
(1)要使方程两根互为相反数,必须两根的和是零,
即x1+x2=- =0,∴k=0,
当k=0时,△=(4k)2-4×2(k+1)(3k-2)=160
∴当k=0时,方程两根互为相反数.
(2)要使方程两根互为倒数,必须两根的积是1,即
x1x2= =1,解得k=4
当k=4时,△=(4k)2-4×2(k+1)(3k-2)=-1440
∴k为任何实数,方程都没有互为倒数的两个实数根.
(3)要使方程只有一个根为零,必须二根的积为零,且二根的和不是零,
即x1x2= =0,解得k=
又当k= 时,x1+x2=- ≠0,
当k= 时,△=(4k)2-4×2(k+1)(3k-2)= 0,
∴k= 时,原方程有一根是零,另一根不是零.
说明:研究两个实数根问题时,应注意二次项系数不得为零,△=b2-4ac不得小于零.
3、根的关系,确定方程系中字母的取值范围或取值.
例1、关于x的一元二次方程x2-3x+k+1=0的两根的平方和小于5,求k的取值范围.
设方程两根分别为x1,x2,
x1+x2=3,x1·x2=k+1
∵x12+x22=(x1+x2)2-2x1x2=32-2(k+1)5
∴k1 ①
又∵△=(-3)2-4(k+1)≥0
∴k≤ ②
由①②得:1k≤
说明:例1是应用根的判别式,已知条件,构造不等式,用不等式组的思想,确定字母的取值范围.
例2、知:方程x2+2(m-2)x+m2+4=0有两个实数根,且这两个根的平方和比两根的积大21,求m的值.
分析:本题是利用转化的思想将等量关系“两个根的平方和比两根的积大21”转化为关于m的方程,就可求得m的值.
∵方程有两个实数根,
∴△=[2(m-2)]2-4×1×(m2+4)≥0
解这个不等式,得m≤0
设方程两根为x1,x2,
∴x1+x2=-2(m-2) x1·x2=m2+4
∵x12+x22-x1x2=21
∴(x1+x2)2-3x1x2=21
∴[-2(m-2)]2-3(m2+4)=21
整理得:m2-16m-17=0
解得:m1=17 m2=-1
又∵m≤0 ∴m=-1
说明:1、求出m1=17,m2=-1后,还要注意隐含条件m≤0,舍去不合题意的m=17.
三、小结 :一元二次方程的根与系数的关系,综合性强,应用极为广泛,在中学数学中占有极重要的地位,是中考的重点,学习时要引起足够重视.
#include
#include
int main()
{
using namespace std;
float a,b,c,x,y,y1,y2;
cout<<"enter a:";
cin>>a;
cout<<"enter b:";
cin>>b;
cout<<"enter c...
全部展开
#include
#include
int main()
{
using namespace std;
float a,b,c,x,y,y1,y2;
cout<<"enter a:";
cin>>a;
cout<<"enter b:";
cin>>b;
cout<<"enter c:";
cin>>c;
x=b*b-4*a*c;
if(x>-0.000001&&x<0.000001)
{
y=-b/(2*a);
cout<<"有两个相等的实根"<
else if(x<-0.000001)
cout<<"没有实根";
else if(x>0.000001)
{
y1=(-b+sqrt(x))/(2*a);
y2=(-b-sqrt(x))/(2*a);
cout<<"y1="<
return 0;
}
编辑通过 给分吧 VC++
写了不少时间
收起
首先,我想说如果输入的是一个一元二次方程,其二次项系数就不为零
当然,如果单就一个孤立的方程ax^2 + bx + c= 0 求解来讲,就要考虑二次项系数为不为零,
下面就一个孤立的方程讨论
ax^2 + bx + c= 0
解 a=o ,b<>o
x=c/b
a=o ,b=o
则c=0
a...
全部展开
首先,我想说如果输入的是一个一元二次方程,其二次项系数就不为零
当然,如果单就一个孤立的方程ax^2 + bx + c= 0 求解来讲,就要考虑二次项系数为不为零,
下面就一个孤立的方程讨论
ax^2 + bx + c= 0
解 a=o ,b<>o
x=c/b
a=o ,b=o
则c=0
a<>0,
b^2 - 4ac >0和 b^2 - 4ac =0
x=-b+√(b^2-4ac)/2a -b-√(b^2-4ac)/2a
b^2 - 4ac <0
无解
求根可以用很多种方法,看情况而定。
收起
当a=0时x=-c/b;
当a≠0,且△=b^2-4ac<0时,方程无解;
当a≠0,且△=b^2-4ac≥0时,x=(-b±√△)/2a