I need to write a header file for my C++ code: #include using namespace std; class Fraction {    private:    int numerator, denominator;     public:    Fraction()    {         numerator = 1;         denominator = 1;    }    Fraction(int n, int d)    {       numerator = n;       if (d==0) {          cout << "ERROR: ATTEMPTING TO DIVIDE BY ZERO" << endl;          exit(0);       }       else          denominator = d;    }     Fraction Sum(Fraction otherFraction)     {         int n = numerator*otherFraction.denominator+otherFraction.numerator*denominator;         int d = denominator*otherFraction.denominator;         return Fraction(n/gcd(n,d),d/gcd(n,d));     }     int gcd(int n, int d)     {         int remainder;         while (d != 0)         {             remainder = n % d;             n = d;             d = remainder;         }         return n;     }       void show()     {       if (denominator == 1)         cout << numerator << endl;       else          cout << numerator << "/" << denominator << endl;;     } }; int main() {    Fraction a(1,2);    Fraction b(1,4);    Fraction c;    c = a.Sum(b);     c.show();    return 0; }

Microsoft Visual C#
7th Edition
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Joyce, Farrell.
Chapter7: Using Methods
Section: Chapter Questions
Problem 3RQ
icon
Related questions
Question

I need to write a header file for my C++ code:


#include <iostream>
using namespace std;

class Fraction
{

   private:
   int numerator, denominator; 
   public:

   Fraction()
   {
        numerator = 1;
        denominator = 1;
   }


   Fraction(int n, int d)
   {
      numerator = n;
      if (d==0) {
         cout << "ERROR: ATTEMPTING TO DIVIDE BY ZERO" << endl;
         exit(0);
      }
      else
         denominator = d;
   }

    Fraction Sum(Fraction otherFraction)
    {
        int n = numerator*otherFraction.denominator+otherFraction.numerator*denominator;
        int d = denominator*otherFraction.denominator;
        return Fraction(n/gcd(n,d),d/gcd(n,d));
    }

    int gcd(int n, int d)
    {
        int remainder;
        while (d != 0)
        {
            remainder = n % d;
            n = d;
            d = remainder;
        }
        return n;
    }

 

    void show()
    {
      if (denominator == 1)
        cout << numerator << endl;
      else
         cout << numerator << "/" << denominator << endl;;
    }
};

int main()
{
   Fraction a(1,2);
   Fraction b(1,4);
   Fraction c;

   c = a.Sum(b); 
   c.show();

   return 0;
}

Expert Solution
steps

Step by step

Solved in 5 steps with 1 images

Blurred answer
Knowledge Booster
Reference Types in Function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,