I'm just trying to help you. I found this solution on the link below
http://qaboard.cramster.com/computer-science-topic-5-445472-cpi0.aspx
The code below is compiled.
/* Sample run with your data
Enter the time
Hour: 10
Minutes: 23
Seconds: 10
Enter the time
Hour: 1
Minutes: 45
Seconds: 25
Time 1 : 10:23:10
Time 2 : 01:45:25
Added :
10:23:10
+01:45:25
----------
12:08:35
Subtracted:
10:23:10
-01:45:25
----------
08:37:45
Press any key to continue . . .
*/
#include<iostream>
#include<iomanip.h>
using namespace std;
void convert(int,int&,int&,int&);
class Time
{
public:
int hour,minute,second;
Time()
{hour=0;
minute=0;
second=0;
}
~Time()
{hour=0;
minute=0;
second=0;
}
Time(int h,int m,int s)
{hour=h;
minute=m;
second=s;
}
void get()
{cout<<"Enter the time\n";
cout<<"Hour: ";
cin>>hour;
cout<<"Minutes: ";
cin>>minute;
cout<<"Seconds: ";
cin>>second;
}
void show()
{cout<<setw(2)<<setfill('0')<<hour<<":"<<setw(2)<<setfill('0')<<minute<<":"<<setw(2)<<setfill('0')<<second<<endl;
}
Time operator + ( Time t)
{int h,m,s;
int totalsec;
totalsec=(hour*3600+minute*60+second)+(t.hour*3600+t.minute*60+t.second);
convert(totalsec,h,m,s);
return Time(h,m,s);
}
Time operator - ( Time t)
{int h,m,s,totalsec;
totalsec=(hour*3600+minute*60+second)-(t.hour*3600+t.minute*60+t.second);
if(totalsec<0)
totalsec=-totalsec;
convert(totalsec,h,m,s);
return Time(h,m,s);
}
void convert(int totalsec,int& h,int& m,int& s)
{ s=totalsec%60;
totalsec=totalsec/60;
m=totalsec%60;
h=(totalsec/60)%12;
if(h==0)
h=12;
return;
}
};
int main()
{ Time time1,time2,added,subtracted;
cout.setf(ios::fixed,ios::floatfield);
cout.precision(2);
time1.get();
time2.get();
added=time1+time2;
subtracted=time1-time2;
cout<<"Time 1 : ";
time1.show();
cout<<"Time 2 : ";
time2.show();
cout<<"\nAdded :\n ";
time1.show();
cout<<"+";
time2.show();
cout<<"----------\n ";
added.show();
cout<<"\nSubtracted:\n ";
time1.show();
cout<<"-";
time2.show();
cout<<"----------\n ";
subtracted.show();
system("pause");
}