Write a program to test your class.
Use integer variables to represent the private data of the class—the numerator and the denominator.
Provide a constructor that enables an object of this class to be initialized when it’s declared.
The constructor should contain default values in case no initializers are provided and should store
the fraction in reduced form. For example, the fraction 2/4
would be stored in the object as 1 in the numerator and 2 in the denominator. Provide public
member functions that perform each of the following tasks:
a) Adding two Rational numbers. The result should be stored in reduced form.
b) Subtracting two Rational numbers. The result should be stored in reduced form.
c) Multiplying two Rational numbers. The result should be stored in reduced form.
d) Dividing two Rational numbers. The result should be stored in reduced form.
e) Printing Rational numbers in the form a/b, where a is the numerator and b is the denominator.
f) Printing Rational numbers in floating-point format.
The deadline is tonight by midnight
I have this header file if it helps any
using namespace std;
Rational(int = 0,int =0);
void addition(Rational r);
void subtraction(Rational r);
void multiplication(Rational r);
void division(Rational r);
and also this driver file
Rational::Rational(int num, int den)
numerator = num;
denominator = den;
void Rational::addition(Rational r)
numerator = numerator + r.numerator;
denominator = denominator + r.denominator;
void Rational::subtraction(Rational r)
numerator = numerator - r.numerator;
denominator = denominator - r.denominator;
void Rational::multiplication(Rational r)
numerator = numerator * r.numerator;
denominator = denominator * r.denominator;
void Rational::division(Rational r)
numerator = numerator * r.denominator;
denominator = denominator * r.numerator;
cout << numerator << "/" << denominator;
cout << numerator / static_cast<float>( denominator );
largest = numerator > denominator ? numerator : denominator;
int gcd = 0;
for ( int loop = 2; loop <= largest; loop++ )
if ( numerator % loop == 0 && denominator % loop == 0 )
gcd = loop;
if (gcd != 0)
numerator /= gcd;
denominator /= gcd;
Logicpro any updates?