分析
一元二次方程ax2+bx+c=0的根分为三种情况。方程的根与判别式有如下关系,Δ=b2-4ac
(1)当Δ0时,方程有两个不相等的实数根
(2)当Δ=0时,方程有两个相等的实数根
(3)当Δ0时,方程无实数根
可采用求根公式进行求解。
伪代码根据一元二次方程求解的三种情况,可以采用if语句进行编写。
ifΔ0
求出两个实数根
elseifΔ=0
求出一个实数根
else
没有实数根
代码示例#includestdio.h
#includemath.h
intmain(void){
doublea=1;
doubleb=2;
doublec=-3;
doublex1,x2,delta;
delta=b*b-4*a*c;
if(delta0){
x1=(-b+sqrt(delta))/2;
x2=(-b-sqrt(delta))/2;
printf("方程有两个实数根,x1=%lfx2=%lf",x1,x2);
}
elseif(delta==0){
x1=(-b+sqrt(delta))/2;
printf("方程有一个实数根,x1=x2=%lf",x1);
}
else
printf("方程无实数根");
return0;
}
运行结果总结本例中采用if结构判断不同的根,但在输入的时候采用的是定值,可以使用scanf函数进行改进输入,并且增加循环可以重复输入。