Code:
#include <string.h>
#include <iostream.h>
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#include <time.h>
class TIME {
public:
TIME(); // constructor
void AddSecond(); // sec++
void SetTime(int, int, int);
void GetTime();
void PrintTime();
private:
int hour;
int min;
int sec;
};
TIME::TIME()
{
hour = 0;
min = 0;
sec = 0;
}
void TIME::SetTime(int h, int m, int s)
{
if (h>=0 && h < 24) { hour = h; }
if (m>=0 && m < 60) { min = m; }
if (s>=0 && s < 60) { sec = s;}
}
void TIME::GetTime()
{
cout << "Enter Time in 24-hr format: ";
cout << "\n hour: ";
cin >> hour;
cout << "\n min: ";
cin >> min;
cout << "\n sec: ";
cin >> sec;
if ((hour<0) || (hour >23) || (min<0) ||
(min>59) || (sec<0) || (sec>59))
{
cout << "\nError detected!\n" ;
}
}
void TIME::PrintTime()
{
cout << (hour<10?"0":"") << hour << ":"
<< (min <10?"0":"") << min << ":"
<< (sec <10?"0":"") << sec << endl;
}
void TIME::AddSecond()
{
if (sec == 59)
{
sec = 0;
if (min == 59)
{
min = 0;
if (hour == 23)
hour = 0;
else
hour++;
}
else
min++;
}
else
sec++;
}
void delay ( int milli )
{
clock_t end = clock() + milli;
while ( clock() < end )
;
}
int main()
{
// main program
TIME t;
t.GetTime();
while ( !kbhit() )
{
t.PrintTime();
t.AddSecond();
delay ( 1000 );
}
return 0;
}
-Prelude