第九周项目五-一元二次方程类

来源:互联网 发布:template web.js api 编辑:程序博客网 时间:2024/05/16 04:25
#include <iostream>using namespace std;class CEquation{private:    double a;     // 未知数系数    double b;     // 常数项    char unknown; // 代表未知数的符号public:    CEquation(double aa=0,double bb=0):a(aa),b(bb) {}    friend istream &operator >> (istream &in,CEquation &e)    {        char t;        int j;        in>>e.a>>e.unknown>>e.b>>t>>j;        return in;    }    friend ostream &operator << (ostream &out,CEquation &e)    {        if(e.b<0)        {            out<<e.a<<e.unknown<<e.b<<"=0";        }        else        {            out<<e.a<<e.unknown<<"+"<<e.b<<"=0";        }        return out;    }    double Solve();    char getUnknown();};char CEquation::getUnknown(){    return unknown;}double CEquation::Solve(){    return -b/a;}int main(){    CEquation e;    for(int i=0;i<2;i++)    {        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=...    }    return 0;}

运行结果:


0 0