求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac>0,等于0和小于0的根并输出结果.从主函数输入a,b,c的值

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/01 00:23:14

求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac>0,等于0和小于0的根并输出结果.从主函数输入a,b,c的值
求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac>0,等于0和小于0的根并输出结果.从主函数输入a,b,c的值

求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac>0,等于0和小于0的根并输出结果.从主函数输入a,b,c的值
#include
#include
#include
int Judge( double a,double b,double c)
{
double result = b*b - 4*a*c;
if( result == 0 )
return 0;
else if( result > 0 )
return 1;
else
return -1;
}
void ComputeGreatThanZero( double a,double b,double c )
{
printf( "x1 = %gf,x2 = %gf",(-b+sqrt(b*b-4*a*c))/(2*a),((-b-sqrt(b*b-4*a*c))/(2*a)) );
}
void ComputeEqualZero( double a,double b ,double c )
{
printf( "x1 = x2 = %g",-b/(2*a));
}
void ComputeBelowZero( double a,double b,double c )
{
double delta = sqrt(4*a*c-b*b);
double temp = delta/(2*a);
printf( "x1 = %g ",-b/(2*a));
if( temp > 0 )
printf( " + %gi,",temp);
else
printf( " - %gi,",fabs(temp) );
printf( "x2 = %g",-b/(2*a) );
if( delta > 0 )
printf( " - %gi",fabs( temp));
else
printf( " + %gi",fabs(temp));
}
void main()
{
double a,b,c;
int flag;
scanf( "%lf%lf%lf",&a,&b,&c);
if( a == 0 )
{
printf( "\n a = 0\n");
exit(1);
}
flag = Judge( a,b,c);
if( flag > 0 )
ComputeGreatThanZero(a,b,c);
else if( flag == 0 )
ComputeEqualZero(a,b,c);
else
ComputeBelowZero(a,b,c);
}
// zd_44.cpp :Defines the entry point for the console application.
//
#include
#include
float x1,x2,disc,p,q;
greater_than_zero(float a,float b)
{
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
}
equal_to_zero(float a,float b)
{
x1=x2=(-b)/(2*a);
}
smaller_than_zero(float a,float b)
{
p=-b/(2*a);
q=sqrt(abs(disc))/(2*a);
}
int main(int argc,char* argv[])
{
float a,b,c;
printf("Input a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
printf("\nequation:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);
disc=b*b-4*a*c;
printf("root:\n");
if(disc>0)
{
greater_than_zero(a,b);
printf("x1=%5.2f\tx2=%5.2f\n\n",x1,x2);
}
else if(disc==0)
{
equal_to_zero(a,b);
printf("x1=%5.2f\tx2=%5.2f\n\n",x1,x2);
}
else
{
smaller_than_zero(a,b);
printf("x1=%5.2f+%5.2fi\tx2=%5.2f-%f5.2i\n",p,q,p,q);
}
printf("Hello World!\n");
return 0;
}
运行结果:
Input a,b,c:7,4,3
equation:7.00*x*x+ 4.00*x+ 3.00=0
root:
x1=-0.29+ 0.59i x2=-0.29-0.5890155.2i
Hello World!
Press any key to continue

求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac>0,等于0和小于0的根并输出结果.从主函数输入a,b,c的值 已知下面三个二次方程有公共根:ax2+bx+c=0,bx2+cx+a+0,cx2+ax+b+0,试证明a+b+c=0;求这三个方程的根;求a3+b3+c3/abc的值 用java编!从键盘输入三个整型数,其分别为一元二次方程ax2+bx+c=0中a,b,c的值,判断此方程有无实数根,从键盘输入三个整型数,其分别为一元二次方程ax2+bx+c=0中a,b,c的值,判断此方程有无实数根,若 用c语言写一函数,求方程aX2+bX+c=0的根.从主函数输入a、b、c的值 VB中输入方程ax2+bx+c=0的三个系数a、b、c(设a不等于零),求方程的根(要求输出时保留小数点两位).不讨论△的情况 用c语言编写:求方程ax2+bx+c=0的实数根.a,b,c由键盘输入,a≠0且b2-4ac>0;谢谢! 已知抛物线y=ax2+bx+c顶点坐标为(-1,10),且方程ax2+bx+c=0两实根的平方和为12,求不等式ax2+bx+c>0的解集 已知二次函数y=ax2+bx+c,且不等式ax2+bx+c>-2x的解为1≤x≤31、若方程ax2+bx+c+6a=0有两个相等的根.有二次函数y=ax2+bx+c的解析式2、若二次函数y=ax2+bx+c的最大值为正数,求a取值范围 求方程ax2+bx+c=0的根 的VB程序求一元二次方程ax2+bx+c=0的根的VB程序,要考虑到:1 当a=0 的 情况2 有复数解的情况 抛物线Y=ax2+bx+c的图像如图,则关于x的方程ax2+bx+c-2=0的根的情况是 已知抛物线y=ax2+bx+c如图所示,则关于x的方程ax2+bx+c-8=0的根的情况是(  )步骤 如果关于x的一元二次方程ax2+bx+c+0(a不等于0)的两个实数根为α,β,那么方程ax2-bx+c=0的两个实数根ax2+bx+c=0 方程aX2+bX+c=0 的两根为-3,1 则抛物线y=aX2+bX+c的对称轴是直线( ) 已知方程x3+ax2+bx+c=0的三个根分别为一椭圆,一双曲线,一抛物线的离心率,求a2+b2的范围.求详解. 方程ax2+bx+c=0的两个根为x1=1.3,x2=6.7,那么抛物线y=ax2+bx+c的对称轴为______?(a≠0)求解答过程以及答案 编程求ax2+bx+c=0方程的根,要求a,b,c从键盘入手,程序中求出方程的所有解 用反证法证明:若方程ax2+bx+c=0(a不等于0)有两个不相等的实数根,则 一元二次方程 (10 16:47:34)若C(C不等于0)是方程AX2+BX+C=0的一个根,求AC+B的值