?? 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 + -