Create a class called Rational for performing arithmetic wit
Solution
#include <iostream>
 using namespace std;
class Rational
 {
 private:
 int numerator;
 int denominator;
 public:
 Rational() //default constructor
 {
 this->numerator =0;
 this->denominator = 0;
 }
 Rational(int numerator,int denominator) //parameterized constructor
 {
 this->numerator=numerator;
 this->denominator=denominator;
 reduce();
 }
 Rational reduce() //reduce function
 {
 Rational temp;
 int x,y,z;
 x=numerator;
 y=denominator;
 z=(x*x<y*y)?(z=x):(z=y);
 for(int i=2;i*i<=z*z;i++)
 {
 while((x%i)==0 && (y%i)==0)
 {
 x=x/i;
 y=y/i;
 z=z/i;
 }
 }
 if(y<0)
 {
 temp.numerator=-x;
 temp.denominator=-y;
 }
 else
 {
 temp.numerator=x;
 temp.denominator=y;
 }
 return temp;
 }
 static Rational Add(Rational r1,Rational r2) //static add method
 {
 Rational temp;
 temp.numerator=r1.numerator*r2.denominator+r2.numerator*r1.denominator;
  temp.denominator=r1.denominator*r2.denominator;
 temp.reduce();
 return temp;
 }
 static Rational Sub(Rational r1,Rational r2) //static subtract method
 {
 Rational temp;
 temp.numerator=r1.numerator*r2.denominator-r2.numerator*r1.denominator;
  temp.denominator=r1.denominator*r2.denominator;
 temp.reduce();
 return temp;
 }
 static Rational Mul(Rational r1,Rational r2) //static multiply method
 {
 Rational temp;
 temp.numerator=r1.numerator*r2.numerator;
 temp.denominator=r1.denominator*r2.denominator;
 temp.reduce();
 return temp;
   
 }
 static Rational Div(Rational r1,Rational r2) //static division method
 {
 Rational temp;
 temp.numerator=r1.numerator*r2.denominator;
 temp.denominator=r1.denominator*r2.numerator;
 temp.reduce();
 return temp;
 }
void display() //display in fraction
 {
 cout<<numerator<<\"/\"<<denominator;
 }
 void displayFloat() //display in floating point
 {
    cout<<\"\\t In decimal :\"<<(float)numerator/(float)denominator;
   
 }
 };
int main()
 {
    Rational r1(3,5);
    Rational r2(7,6);
    Rational result1,result2,result3,result4;
    cout<<\"r1 : \";
    r1.display();
    cout<<\"\ r2 : \";
    r2.display();
   
    cout<<\"\ Adding r1 and r2 : \";
    result1 = result1.Add(r1,r2);
    result1.display();
    result1.displayFloat();
    cout<<\"\ Subtracting r2 from r1: \";
    result2= result2.Sub(r1,r2);
    result2.display();
    result2.displayFloat();
    cout<<\"\ Multiplying r1 and r2 : \";
    result3=result3.Mul(r1,r2);
    result3.display();
    result3.displayFloat();
    cout<<\"\ Dividing r1 and r2 : \";
    result4=result4.Div(r1,r2);
    result4.display();
    result4.displayFloat();
   
   
   
    return 0;
 }
output:



