Write a C++ program creates class time with member function to overload operator + to add two object of type time

Assignment 25

Create a class time that contains hours, minute and seconds as data members. Write the member function to overload operator ‘+’ to add two object of type time (Use Parameterized constructor to accept values for time).

Program Code for run:

#include <iostream>

#include <iomanip>

using namespace std;

class Time

{ 

            int hh, mm, ss;

  public:

            Time(int h = 0 , int m = 0, int s = 0)

            {

                        hh = h;

                        mm = m;

                        ss = s;

            }

            void operator+( Time t)

            {

                        Time t1;

                        t1.hh = this->hh + t.hh;

                        t1.mm = this->mm + t.mm;

                        t1.ss = this->ss + t.ss;

                        float m = 0, s = 0;

                        if ( t1.ss > 60)

                        {

                                    float s = t1.ss / 60;

                                    t1.ss = t1.ss % 60;

                                    t1.mm = t1.mm + s;

                        }

                        if ( t1.mm > 60)

                        {

                                    float m = t1.mm / 60;

                                    t1.mm = t1.mm % 60;

                                    t1.hh = t1.hh + m;

                        }

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t \t  Addition of Time " << endl;

    cout << " \t \t  Format HH : MM : SS " << endl;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t \t    T   I   M   E " << endl;

    cout << " - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -";

    cout << endl;

    cout << " \t "<< setw(6) << " hours: ";

    cout << " \t "<< setw(6) << " minute: ";

    cout << " \t "<< setw(6) << " seconds: " << endl;

   

    cout << "  T1";

    cout << " \t "<< setw(6) << this->hh ;

    cout << " \t "<< setw(6) << this->mm ;

    cout << " \t "<< setw(6) << this->ss << endl;

   

    cout << "  +  " << endl;

   

    cout << "  T2";

    cout << " \t "<< setw(6) << t.hh ;

    cout << " \t "<< setw(6) << t.mm ;

    cout << " \t "<< setw(6) << t.ss << endl;

   

    cout << " - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -";

    cout << endl;

   

    cout << "Result";

    cout << " \t " << setw(6) << t1.hh ;

    cout << " \t "<< setw(6) << t1.mm ;

    cout << " \t "<< setw(6) << t1.ss << endl;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

            }

};

int main()

{

    int h, m, s;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t Accept values for time " << endl;

    cout << "    Time format Hours : Minutes : Seconds " << endl;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t Accept values for time T1 " << endl;

    cout << "    Time format Hours : Minutes : Seconds " << endl;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t Accept Hours for Time T1 " << endl << " \t ";

    cin >> h;

    cout << " \t Accept Minute for Time T1 " << endl << " \t ";

    cin >> m;

    cout << " \t Accept seconds for Time T1 " << endl << " \t ";

    cin >> s;

    Time t1(h, m, s);

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t Accept values for time T2 " << endl;

    cout << " \t Time format Hours : Minute : Seconds " << endl;

    cout << "* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;

    cout << " \t Accept Hours for Time T2 " << endl << " \t ";

    cin >> h;

    cout << " \t Accept Minute for Time T2 " << endl << " \t ";

    cin >> m;

    cout << " \t Accept seconds for Time T2 " << endl << " \t ";

    cin >> s;

    Time t2(h, m, s);

    t1+t2;

    return 0;

}

Output of Program:

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

             Accept values for time

    Time format Hours : Minutes : Seconds

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

             Accept values for time T1

    Time format Hours : Minutes : Seconds

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

             Accept Hours for Time T1

             7

             Accept Minute for Time T1

             55

             Accept seconds for Time T1

             59

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

             Accept values for time T2

             Time format Hours : Minute : Seconds

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

             Accept Hours for Time T2

             8

             Accept Minute for Time T2

             45

             Accept seconds for Time T2

             50

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

                          Addition of Time

                          Format HH : MM : SS

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

                          T   I   M   E

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

              hours:   minute:  seconds:

  T1                7            55             59

  + 

  T2                8           45              50

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Result         16            41             49

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Comments