Listing 1 (rational.h)

z#include <iostream.h>

class rational
     {
public:
     rational();
     rational(long n, long d = 1);
     rational &operator+=(rational r);
     rational &operator-= (rational r);
     rational &operator*=(rational r);
     rational &operator/=(rational r);
     rational operator+();
     rational operator-();
     double to_double();
     friend ostream &operator<<(ostream &os, rational r);
private:
     long num, denom;
     void simplify();
     };

rational operator+(rational r1, rational r2);
rational operator-(rational r1, rational r2)
rational operator*(rational r1, rational r2)
rational operator/(rational r1, rational r2)

rational operator++(rational &r)
rational operator--(rational &r)
rational operator++(rational &r, int);
rational operator--(rational &r, int);

/* End of File */