2013级C++第9周(春)项目——运算符重载(二) 【项目5】
2014-04-21 20:22
459 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2014, 在校学生 * All rightsreserved. * 文件名称: 1.cpp * 作 者: 刘旺 * 完成日期:2013年4月21日 * 版本号: v1.0 * 输入描述:无 * 问题描述:设计一元一次方程类,求形如ax+b=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){} ostream& operator<<(ostream &os, CEquation &e) { os << e.a ; if(e.b>=0) { cout << '+' ; } os << e.unknown << e.b << "=0" << endl ; return os ; } istream& operator>>(istream &is , CEquation &e) { is >> e.a >> e.unknown>> e.b ; return is ; } double CEquation::Solve() { return (-b)/a ; } char CEquation::getUnknown() { return unknown ; } int main() { CEquation e; cout<<"请输入方程(格式:ax-b=0,a、b为常数,x处是代表未知数的字母):"; cin>>e; //在两次测试中,分别输入3x-8=0和50s+180=0 cout<<"方程为:"<<e ; cout<<"方程的解为:"<<e.getUnknown()<<"="<<e.Solve()<<endl; //对两次测试,分别输出x=...和s=... e.Solve(); }
坚持就是胜利,我相信量变产生质变。
相关文章推荐
- 2013级C++第9周(春)项目——运算符重载(二)
- 2013级C++第8周(春)项目——运算符重载 【项目1】实现复数类中的运算符重载
- C++第9周项目2 - 实现时间类中的运算符重载
- 2013级C++第8周(春)项目——运算符重载
- C++第9周项目1 - 实现复数类中的运算符重载
- C++第9周项目3 - 实现分数类中的运算符重载
- 2013级C++第12周(春)项目——成员的访问属性、多重继承 【项目2 - 教师兼干部类】
- 2014秋C++第9周项目5参考-循环填充题
- C++第9周项目3参考——利息计算器
- C++第9周(春)项目1 - 复数类
- 2013级C++第15周(春)项目——输入输出流及文件文件操作
- 2013级C++第7周(春)项目——深复制、友元、模板 【项目3-成员函数、友元函数和一般函数有区别】
- 2013级C++第17周项目【项目3-数组的排序】
- 第9周项目3分数类中的运算符重载
- C++第9周(春)项目3 - 分数类
- 2014秋C++第9周项目6参考-穷举法解决组合问题
- C++第9周项目3参考——利息计算器
- C++第9周(春)项目2 - Time类
- 2013级C++第11周(春)项目——通过继承拥有基类的资源
- 2013级C++第3周【项目1-掌握有对象的程序结构】