Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I am totally lost, some insight would be greatly appreciated. Create a class cal

ID: 3637109 • Letter: I

Question

I am totally lost, some insight would be greatly appreciated.

Create a class called Rational for performing arithmetic with fractions.
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 procided and should store the fraction in reduced form.

Provide public member functions that perform each of the following tasks:

a.Adding two Rational numbers (store in reduced form)
b.Subtracting two Rational numbers (store in reduced form)
c.Multiplying two Rational numbers (store in reduced form)
d.Dividing two Rational numbers (store in reduced form)
e.Printing Rational numbers in the form a/b where a is the numerator and b is the demoninator.
f. Printing Rational numbers in floating-point format.

Explanation / Answer

class Rational { private: int numerator; int denominator; public: Rational(int num = 0, int den = 1); void add(Rational r); void sub(Rational r); void mul(Rational r); void div(Rational r); void print(); void printFloat(); private: void reduce(); }; Rational::Rational(int num, int den) : numerator(num), denominator(den) {} void Rational::add(Rational r) { numerator = numerator + r.numerator; denominator = denomiator + r.denominator; reduce(); } void Rational::sub(Rational r) { numerator = numerator - r.numerator; denominator = denomiator - r.denominator; reduce(); } void Rational::mul(Rational r) { numerator = numerator * r.numerator; denominator = denomiator * r.denominator; reduce(); } void Rational::div(Rational r) { numerator = numerator * r.denominator; denominator = denomiator * r.numerator; reduce(); } void Rational::print() { cout
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote