求方程ax2+bx+c=0的根.用三个函数分别求当:b2-4ac大于0、等于0和小于0时的根并输出结果。在主程序中输入a,b,c的值。
以下是此题的【c++源代码】,需要【c源代码】请点击进入
#include
#include
using namespace std;
float x1,x2,disc,p,q;
int main()
{void greater_than_zero(float,float);
void equal_to_zero(float,float);
void smaller_than_zero(float,float);
float a,b,c;
cout<
cin>>a>>b>>c;
disc=b*b-4*a*c;
cout<
if (disc>0)
{
greater_than_zero(a,b);
cout<
}
else if (disc==0)
{equal_to_zero(a,b);
cout<
}
else
{smaller_than_zero(a,b);
cout<
cout<
}
return 0;
}
void greater_than_zero(float a,float b) /* 定义一个函数,用来求disc>0时方程的根 */
{x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
}
void equal_to_zero(float a,float b) /* 定义一个函数,用来求disc=0时方程的根 */
{
x1=x2=(-b)/(2*a);
}
void smaller_than_zero(float a,float b) /* 定义一个函数,用来求disc<0时方程的根 */
{
p=-b/(2*a);
q=sqrt(-disc)/(2*a);
}