第九周实验报告任务5 设计一元一次方程类,求形如ax+b=0的方程的解。

来源:互联网 发布:服装设计网络培训班 编辑:程序博客网 时间:2024/04/30 01:26

/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称:设计一元一次方程类,求形如ax+b=0的方程的解。

* 作    者:       陶锋                     
* 完成日期:     2012    年 04      月  18    日
* 版 本 号:       V1.0   
* 对任务及求解方法的描述部分
* 输入描述: 
* 问题描述: 
* 程序输出: 

* 程序头部的注释结束

*/

#include "iostream"using namespace std;class CEquation  {  private:      double a;     // 未知数系数      double b;     // 常数项      char unknown; // 未知数的符号  public:      CEquation(double aa=0,double bb=0);      friend istream &operator >> (istream &in,CEquation &e);      friend ostream &operator << (ostream &out,CEquation &e);      double Solve();      char getUnknown();  };  CEquation::CEquation(double aa,double bb):a(aa),b(bb){}  istream &operator >> (istream &in,CEquation &e)  {      double d;      char c;      in>>e.a>>e.unknown>>e.b>>c>>d;      return in;  }  ostream &operator << (ostream &out,CEquation &e)  {      if(e.b >=0)      {          out<<e.a<<'x'<<'+'<<e.b<<'='<<'0'<<endl;      }      else      {  out<<e.a<<'x'<<e.b<<'='<<'0'<<endl;       }      return out;  }  double CEquation::Solve()  {      return ((-b)/a);  }  char CEquation::getUnknown()  {      return unknown;  }  int main()  {      CEquation e,m;      cout<<"请输入一元一次方程(输入格式:3x-8=0):";      cin>>e;         cout<<"方程为:"<<e;      cout<<"方程的解为:"<<e.getUnknown()<<"="<<e.Solve()<<endl;       cout<<"请输入一元一次方程(输入格式:5s+18=0):";      cin>>m;         cout<<"方程为:"<<m;      cout<<"方程的解为:"<<m.getUnknown()<<"="<<m.Solve()<<endl;       m.Solve ();      system("pause");return 0;}


原创粉丝点击