This is C progamming question Write a class for time objects
This is C+ progamming question.
Write a class for time objects that store three integer values for hour, minute, and second. Also, write a program to test the functionality of your class. Make sure it does all of the following:
Create time objects with no values (default)
Create time objects with all three values (hours, minutes, seconds)
Create time objects with only hours and minutes Change hours, minutes, and seconds independently
Change time (all three values)
Display military time
Display standard time
Solution
#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\ \";
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<<\"\ Added :\ \";
time1.show();
cout<<\"+\";
time2.show();
cout<<\"----------\ \";
added.show();
cout<<\"\ Subtracted:\ \";
time1.show();
cout<<\"-\";
time2.show();
cout<<\"----------\ \";
subtracted.show();
system(\"pause\");
}


