📄 fraction.cpp
字号:
#include <iostream>
#include <stdlib.h>
using namespace std;
void fmzero()
{
cerr<<"the fm can't be zero!"<<endl;
system("PAUSE");
}
class Fraction
{
public:
int fz;
int fm;
Fraction(int x=0,int y=1);
Fraction(const Fraction&);
Fraction &operator=(const Fraction&);
Fraction operator+(const Fraction&);
Fraction operator-(const Fraction&);
Fraction operator*(const Fraction&);
Fraction operator/(const Fraction&);
};
Fraction::Fraction(int x,int y)
{
if(!y)fmzero();
fz=x;
fm=y;
}
Fraction::Fraction(const Fraction &x)
{
if(!x.fm)fmzero();
fz=x.fz;
fm=x.fm;
}
Fraction &Fraction::operator=(const Fraction &x)
{
if(!x.fm)fmzero();
fz=x.fz;
fm=x.fm;
return (*this);
}
Fraction Fraction::operator+(const Fraction &x)
{
if(!x.fm)fmzero();
Fraction tmp;
tmp.fm=(this->fm)*(x.fm);
tmp.fz=(x.fm)*(this->fz)+(this->fm)*(x.fz);
return tmp;
}
Fraction Fraction::operator-(const Fraction &x)
{
if(!x.fm)fmzero();
Fraction tmp;
tmp.fm=(this->fm)*(x.fm);
tmp.fz=(x.fm)*(this->fz)-(this->fm)*(x.fz);
return tmp;
}
Fraction Fraction::operator*(const Fraction &x)
{
if(!x.fm)fmzero();
Fraction tmp;
tmp.fz=(this->fz)*(x.fz);
tmp.fm=(this->fm)*(x.fm);
return tmp;
}
Fraction Fraction::operator/(const Fraction &x)
{
if((!x.fm)||(!x.fz))fmzero();
Fraction tmp;
tmp.fz=(this->fz)*(x.fm);
tmp.fm=(this->fm)*(x.fz);
return tmp;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -