C ++ diseña una clase de tiempo Tiempo, que puede establecer la hora, realizar operaciones de suma y resta de tiempo, generar resultados en un formato determinado y usar esta clase en la función principal.
#include?
#include?
usando?namespace?std;
clase?Time
{
público:
Hora();
Hora(int,int,int);
~Hora();
void?AddHour(int);
void?AddMin(int);
void?AddSec(int);
void?AddTime(int,int,int);
void?SubHour(int);
void?SubMin(int);
void?SubSec(int);
void?SubTime(int,int,int);
void?SetTime(int,int,int);
void?ShowTime();
privado:
int?hora;
int?min;
int?sec; p> p>
};
Tiempo::Tiempo():hora(0),min(0),seg(0)
{
}
Hora::Hora(int?hora,int?min,int?sec)
{
Establecer Hora(hora,min,seg) ;
}
Hora::~Hora()
{
}
¿vacío?Hora: :AddHour (int?_hour)
{
hora?+=?_hour;
}
void?Time::AddMin (int ?_min)
{
int?mintime?=?0;
mintime?=?hora?*?60?+?min;
mintime?+=?_min;
hora?=?mintime?/?60;
min?=?mintime?%?60;
}
void?Time::AddSec(int?_sec)
{
int?secint?=?0;
¿secint?=?hora?*?3600?+?min?*?60?+?sec;
secint?+=?_sec;
hora?=? secint? /?3600;
min?=?(secint?-?hora?*?3600)?/?60;
sec?=?secint?%?60; p>
}
void?Time::AddTime(int?_hour,int?_min,int?_sec)
{
AddSec (_sec );
AddMin(_min);
AddHour(_hour);
}
void?Time::SubHour( int? _hora)
{
hora?-=?_hora;
}
void?Time::SubMin(int? _min)
{
<p>int?mintime?=?0;
mintime?=?hora?*?60?+?min;
mintime?-=?_min;
hora?=?mintime?/?60;
min?=?mintime?%?60;
}
void?Time::SubSec (int?_sec)
{
int?secint?=?0;
secint?=?hora?*?3600?+?min?* ?60?+?seg;
secint?-=?_sec;
hora?=?secint?/?3600;
min?=?( ¿secint?-?hora?*?3600)?/?60;
sec?=?secint?%?60;
}
vacío?Tiempo ::SubTime(int?_hora,int?_min,int?_sec)
{
SubSec(_sec);
SubMin(_min); p> p>
SubHour(_hour);
}
void?Time::SetTime(int?_hour,int?_min,int?_sec)
{
hora?=?0;
min?=?0;
seg?=?0;
AddTime( _hora,_min,_sec);
}
void?Time::ShowTime()
{
cout<< setfill( '0')< cout< cout< } int ?main() { Hora?myTime(12,3,8); myTime.ShowTime(); myTime.AddHour(2); myTime.ShowTime(); myTime.AddMin(58); myTime.ShowTime(); miHora.AddSec(50); miHora.ShowTime(); miHora.AddSec(13); miHora.ShowTime () ; miHora.SubHour(5); miHora.ShowTime(); miHora.SubMin(40); myTime .ShowTime(); myTime.SubSec(4000); myTime.ShowTime(); myTime.AddTime(4,200,4366); miHora.ShowTime(); myTime.SubTime(1,445,4324); myTime.ShowTime(); miHora.SetTime (21,68,321); m yTime.ShowTime(); return?0; }