用C++设计

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:47:23
设计分数类重载“+”,“-”运算符 实现加法和减法运算 多谢

#include <iostream.h>
//using namespace std;
int fun(int ,int ); //求最小公倍数的函数
class dataNum
{
private:
int fenzi;
int fenmu;
public:
dataNum()
{
}
dataNum(int fenzi,int fenmu)
{
this->fenzi=fenzi;
this->fenmu=fenmu;
}
void outPut()
{
cout<<fenzi<<"/"<<fenmu<<endl;
}
friend dataNum operator + (dataNum &, dataNum &);
friend dataNum operator - (dataNum &, dataNum &);
};
dataNum operator + (dataNum &n1,dataNum &n2)
{
int fenzi;
int fenmu;
int multiple; //最小公倍数
multiple=fun(n1.fenmu,n2.fenmu );

fenmu=multiple;
fenzi=n1.fenzi*(multiple/n2.fenmu)+n2.fenzi*(multiple/n1.fenmu);
return dataNum(fenzi,fenmu);
}
dataNum operator - (dataNum &n1, dataNum &n2)
{
int fenzi;
int fenmu;
int multiple; //最小公倍数 通分
multiple=f