24小时热门版块排行榜    

查看: 1046  |  回复: 4
本帖产生 1 个 博学EPI ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

babyrabbit2006

金虫 (小有名气)


[交流] C++编程

求解一元二次方程。
一元二次方程的定义为:
  ax2+bx+c=0
(1)如果b2 -4ac>0,方程有两个不同的实根,分别是:
     
(2)如果b2 -4ac< 0,方程没有实根,但有虚根;
(3)如果b2 -4ac= 0,方程有一个实根。
请你编写一个程序,使其能求出多个二次方程的根。该程序要询问用户是否想继续解下一个方程。用户输入1来继续,输入其它数字,则终止程序。程序要求用户输入a,b和c,然后根据前面的条件计算,并输出答案。
要求:使用类实现,
(1)        a,b,c为该类的私有成员变量;
(2)        求根的实现为该类的成员函数,形式为:
//函数返回值:实根的个数;
//参数:x- 用以返回实根值的数组;
long CalResult(float x[]);
(3)        该类还包含有参构造函数、析构函数。
  谢谢  请尽快

» 猜你喜欢

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
YUE-jf(金币+10):奖励 2010-12-21 14:02:16
#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<<"input a,b,c:";
cin>>a>>b>>c;
disc=b*b-4*a*c;
cout<<"root:"< if (disc>0)
  {
   greater_than_zero(a,b);
   cout<<"x1="<   }
else if (disc==0)
  {equal_to_zero(a,b);
   cout<<"x1="<   }
else
  {smaller_than_zero(a,b);
   cout<<"x1="<    cout<<"x2="<   }
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);
}
3楼2010-12-17 21:51:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
你自己回去实验一下。
4楼2010-12-17 21:52:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 babyrabbit2006 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见