精选问答
用C++设计一个程序,求出一元二次方程ax^2+bx+c=0的根系数a.b.c的值从键盘上输入.求方程根的计算公式为x=(-b+-根号下b^-4ac)/2a当平方根小于0时,输出“No solutions!";否则,输出x的两个实根.

2019-04-13

用C++设计一个程序,求出一元二次方程ax^2+bx+c=0的根
系数a.b.c的值从键盘上输入.求方程根的计算公式为x=(-b+-根号下b^-4ac)/2a
当平方根小于0时,输出“No solutions!";否则,输出x的两个实根.
优质解答
C++的代码:
#include <iostream.h>
#include <math.h>
void main(void)
{
double a,b,c,d;
char ch('y');
do{
cout<<"请依次输入二次方程ax^2+bx+c=0的系数(a不等于0):"<<endl;
cin>>a>>b>>c;
if(-0.0001<a<0.0001) //浮点数不宜直接判断相等
d=b*b-4*a*c;
if(d==0)cout<<"方程有两个相等实根:"<<-b/(2*a)<<endl;
else if(d<0)cout<<"方程有两个不相等复根:"<<-b/(2*a)<<"+i"<<sqrt(-d)/(2*a)<<' '<<-b/(2*a)<<"-i"<<sqrt(-d)/(2*a)<<endl;
else cout<<"方程有两个不相等实根:"<<-b/(2*a)+sqrt(d)/(2*a)<<' '<<-b/(2*a)+sqrt(d)/(2*a)<<endl;
cout<<"继续?(y/n):";cin>>ch;
}while(ch=='y'||ch=='Y');
}
C++的代码:
#include <iostream.h>
#include <math.h>
void main(void)
{
double a,b,c,d;
char ch('y');
do{
cout<<"请依次输入二次方程ax^2+bx+c=0的系数(a不等于0):"<<endl;
cin>>a>>b>>c;
if(-0.0001<a<0.0001) //浮点数不宜直接判断相等
d=b*b-4*a*c;
if(d==0)cout<<"方程有两个相等实根:"<<-b/(2*a)<<endl;
else if(d<0)cout<<"方程有两个不相等复根:"<<-b/(2*a)<<"+i"<<sqrt(-d)/(2*a)<<' '<<-b/(2*a)<<"-i"<<sqrt(-d)/(2*a)<<endl;
else cout<<"方程有两个不相等实根:"<<-b/(2*a)+sqrt(d)/(2*a)<<' '<<-b/(2*a)+sqrt(d)/(2*a)<<endl;
cout<<"继续?(y/n):";cin>>ch;
}while(ch=='y'||ch=='Y');
}
相关标签: 初三 系数 关系 阅读 解法 探究 实数 两个 相等
相关问答