Arithmetic Calculator using Hybrid Inheritance
In this program, we are going to Implement Arithmetic Calculator using Hybrid Inheritance in C++ Programming Language. 
 


The Code given below can be used in TURBO C++ Compilers: -

#include<iostream.h>
#include<conio.h>

// base class
class Num1
{
    public:
    int n1;
    void getN1()
    {
        cin >> n1;
    }
} obj1;

// base class
class Num2
{
    public:
    int n2;
    void getN2()
    {
        cin >> n2;
    }
} obj2;

// first sub class
class Operate : public Num1, public Num2
{
    public:
    void Add()
    {
        cout << obj1.n1 + obj2.n2;
    }
    void sub()
    {
        cout << obj1.n1 - obj2.n2;
    }
    void Product()
    {
        cout << obj1.n1 * obj2.n2;
    }
    void Quotient()
    {
        if (obj2.n2 == 0)
        {
            cout << "Division by 0 NOT possible!";
        }
        else
            cout << (float)obj1.n1 / obj2.n2;
    }
    void Remainder()
    {
        cout << obj1.n1 % obj2.n2;
    }
};

// second sub class
class Print : public Operate
{
    public:
    int choice;
    Operate obj;
    Print()
    {
        cin >> choice;
        switch (choice)
        {
        case 1:
            cout << "Sum = ";
            obj.Add();
            break;
        case 2:
            cout << "Difference  = ";
            obj.sub();
            break;
        case 3:
            cout << "Product = ";
            obj.Product();
            break;
        case 4:
            cout << "Quotient = ";
            obj.Quotient();
            break;
        case 5:
            cout << "Remainder = ";
            obj.Remainder();
            break;
        default:
            cout << "Enter valid choice!";
        }
    }
};

// main function
void main()
{
    clrscr();
    int choice;
    char ch = 'Y';
    do
    {
        cout << "Enter 2 numbers: ";
        obj1.getN1();
        obj2.getN2();
        cout << " Enter choice: \n";
        cout << " 1.Addition \n 2.Subtraction \n 3.Multiplication \n 4.Division \n 5.Find remainder \n";
        Print obj;
        cout << "\nDo you want to continue? [Y/N] ";
        cin >> ch;
    } while (ch == 'Y' || ch == 'y');
    getch();
}
//.......Coded by SHREYA IDATE



The Code given below can be used in gcc/g++ Compilers: -

#include <iostream>
using namespace std;

// base class
class Num1
{
    public:
    int n1;
    void getN1()
    {
        cin >> n1;
    }
} obj1;

// base class
class Num2
{
    public:
    int n2;
    void getN2()
    {
        cin >> n2;
    }
} obj2;

// first sub class
class Operate : public Num1, public Num2
{
    public:
    void Add()
    {
        cout << obj1.n1 + obj2.n2;
    }
    void sub()
    {
        cout << obj1.n1 - obj2.n2;
    }
    void Product()
    {
        cout << obj1.n1 * obj2.n2;
    }
    void Quotient()
    {
        if (obj2.n2 == 0)
        {
            cout << "Division by 0 NOT possible!";
        }
        else
            cout << (float)obj1.n1 / obj2.n2;
    }
    void Remainder()
    {
        cout << obj1.n1 % obj2.n2;
    }
};

// second sub class
class Print : public Operate
{
    public:
    int choice;
    Operate obj;
    Print()
    {
        cin >> choice;
        switch (choice)
        {
        case 1:
            cout << "Sum = ";
            obj.Add();
            break;
        case 2:
            cout << "Difference  = ";
            obj.sub();
            break;
        case 3:
            cout << "Product = ";
            obj.Product();
            break;
        case 4:
            cout << "Quotient = ";
            obj.Quotient();
            break;
        case 5:
            cout << "Remainder = ";
            obj.Remainder();
            break;
        default:
            cout << "Enter valid choice!";
        }
    }
};

// main function
int main()
{
    int choice;
    char ch = 'Y';
    do
    {
        cout << "Enter 2 numbers: ";
        obj1.getN1();
        obj2.getN2();
        cout << " Enter choice: \n";
        cout << " 1.Addition \n 2.Subtraction \n 3.Multiplication \n 4.Division \n 5.Find remainder \n";
        Print obj;
        cout << "\nDo you want to continue? [Y/N] ";
        cin >> ch;
    } while (ch == 'Y' || ch == 'y');
    return 0;
}

//.......Coded by SHREYA IDATE



#ENJOY CODING

Post a Comment

FOR ANY DOUBTS AND ERRORS FEEL FREE TO ASK. YOUR DOUBTS WILL BE ADDRESSED ASAP

Previous Post Next Post