1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
class fraction
{
public:
fraction(){;} //default constructor
fraction(int, int); // member function: Constructor
fraction(int); //Constructor: turns an int into a fraction
//declares operator functions between two fractions
fraction operator =(const fraction&);
fraction operator +(const fraction&)const;
fraction operator -(const fraction&)const;
fraction operator *(const fraction&)const;
fraction operator /(const fraction&)const;
//declares operator functions between an integer and a fraction
friend fraction operator +(const int, const fraction&);
friend fraction operator -(const int, const fraction&);
friend fraction operator *(const int, const fraction&);
friend fraction operator /(const int, const fraction&);
//declares comparison operators between two fractions
bool operator ==(fraction);
bool operator >=(fraction);
bool operator <=(fraction);
bool operator < (fraction);
bool operator > (fraction);
bool operator !=(fraction);
//declares comparison operators between an integer and a fraction
friend bool operator ==(const int, const fraction&);
friend bool operator >=(const int, const fraction&);
friend bool operator <=(const int, const fraction&);
friend bool operator >(const int, const fraction&);
friend bool operator <(const int, const fraction&);
friend bool operator !=(const int, const fraction&);
//delaration for input and output modifiers
friend std::ostream& operator<<(std::ostream&, const fraction);
friend std::istream& operator>>(std::istream&, fraction&);
void Reduce();
int GetNumerator()const{return iNumerator;}
int GetDenominator()const{return iDenominator;}
private:
int iNumerator, //Numerator Of First fraction as Input by the user
iDenominator, //Denominatorof the difference of the two fractions
gcd();
};
#endif
|