Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Fig. 9.9: Time.cpp
- // Member-function definitions for class Time.
- #include <iostream>
- #include <iomanip>
- #include "Time.h" // include definition of class Time from Time.h
- using namespace std;
- // Time constructor initializes each data member to zero;
- // ensures that Time objects start in a consistent state
- Time::Time( int hr, int min, int sec )
- {
- setTime( hr, min, sec ); // validate and set time
- } // end Time constructor
- // set new Time value using universal time; ensure that
- // the data remains consistent by setting invalid values to zero
- void Time::setTime( int h, int m, int s )
- {
- setHour( h ); // set private field hour
- setMinute( m ); // set private field minute
- setSecond( s ); // set private field second
- } // end function setTime
- // set hour value
- void Time::setHour( int h )
- {
- hour = ( h >= 0 && h < 24 ) ? h : 0; // validate hour
- } // end function setHour
- // set minute value
- void Time::setMinute( int m )
- {
- minute = ( m >= 0 && m < 60 ) ? m : 0; // validate minute
- } // end function setMinute
- // set second value
- void Time::setSecond( int s )
- {
- second = ( s >= 0 && s < 60 ) ? s : 0; // validate second
- } // end function setSecond
- // return hour value
- int Time::getHour()
- {
- return hour;
- } // end function getHour
- // return minute value
- int Time::getMinute()
- {
- return minute;
- } // end function getMinute
- // return second value
- int Time::getSecond()
- {
- return second;
- } // end function getSecond
- // print Time in universal-time format (HH:MM:SS)
- void Time::printUniversal()
- {
- cout << setfill( '0' ) << setw( 2 ) << getHour() << ":"
- << setw( 2 ) << getMinute() << ":" << setw( 2 ) << getSecond();
- } // end function printUniversal
- // print Time in standard-time format (HH:MM:SS AM or PM)
- void Time::printStandard()
- {
- cout << ( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 )
- << ":" << setfill( '0' ) << setw( 2 ) << getMinute()
- << ":" << setw( 2 ) << getSecond() << ( hour < 12 ? " AM" : " PM" );
- } // end function printStandard
- // time counter
- void Time::tickTime(int s)
- {
- do
- {
- s++;
- cout << setfill( '0' ) << setw( 2 ) << getHour() << ":"
- << setw( 2 ) << getMinute() << ":" << setw( 2 ) << getSecond();
- wait(1);
- }
- while( second != 100 ); // second 60 ı geçemeyeceği için sürekli döngü dönecek
- }
- // waiting time
- void Time::wait(int seconds)
- {
- clock_t endwait;
- endwait = clock () + seconds * CLOCKS_PER_SEC ; // saniyeyi tanımlayan özel fonksiyon
- while (clock() < endwait) {}
- }
Advertisement
Add Comment
Please, Sign In to add comment