/*************************************************/ // R. A. Hillyard // rational02.cpp // November 2001 // // class with constructors /*************************************************/ #include <iostream> using namespace std; //introduces namespace std class Rational { public : //constructors Rational(); Rational(int top); Rational(int top, int bottom); void input(); void output(); int getTop(); int getBottom(); private: int top; int bottom; }; /********************************************************/ Rational::Rational() { cout << "In default Constructor\n"; top = 0; bottom =1; } /********************************************************/ Rational::Rational(int t) { cout << "In 1 arg Constructor\n"; top = t; bottom = 1; } /********************************************************/ Rational::Rational(int t, int b) { cout << "In 2 arg Constructor\n"; top = t; bottom = b; } /********************************************************/ void Rational::input() { cout << "enter top and bottom > "; cin >> top >> bottom; } /********************************************************/ void Rational::output() { cout << top << "/" << bottom; } /********************************************************/ int Rational::getTop() { return top; } /********************************************************/ int Rational::getBottom() { return bottom; } /********************************************************/ /********************************************************/ int main( void ) { Rational f1(2,6); Rational f2(1,3); Rational f3; Rational f4(7); f3 = Rational(17,19); cout << "Your Fractions are: "; f1.output(); cout << " "; f2.output(); cout << " "; f3.output(); cout << " "; f4.output(); cout << endl; cout << "tops equal: " << f1.getTop() + f2.getTop() + f3.getTop() << endl; cout << "bottoms equal: " << f1.getBottom() + f2.getBottom() + f3.getBottom() << endl; return 0; } /********************Program Output********************* In 2 arg Constructor In 2 arg Constructor In default Constructor In 1 arg Constructor In 2 arg Constructor Your Fractions are: 2/6 1/3 17/19 7/1 tops equal: 20 bottoms equal: 28 */