Public feed
#723805
// Time.cpp// Member-funciton definitions for class Time.#include <iostream>using std::cout;#include <iomanip>using std::setfill;using std::setw;#include "time.h" // include definition of class Time from Time.h// Time constructor initializes each data member to zero;// ensures that Time objects start in a consistent stateTime::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 zerovoid 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}// set hour valuevoid Time::setHour( int h ){ int hour; hour = ( h >= 0 && h < 24 ) ? h : 0; // validate hour //ssm = hour * 60 * 60;}// set minute valuevoid Time::setMinute( int m ){ int minute; int hssm; // value from ssm in setHour hssm = ssm; minute = ( m >= 0 && m < 60 ) ? m : 0; // validate hour ssm = hssm + (minute * 60); }// set second valuevoid Time::setSecond( int s ){ int hmssm; // value from ssm in setMinute int second; hmssm = ssm; second = ( s >= 0 && s < 60 ) ? s : 0; // validate second ssm = hmssm + second;}// return hour valueint Time::getHour(){ int hour; hour = (ssm / 60) / 60; ssmLeft = ssm % ((ssm / 60) / 60); ssm = ssmLeft; return hour;}// return minute valueint Time::getMinute(){ int minute; minute = ssm / 60; ssmLeft = ssm % (ssm / 60); ssm = ssmLeft; return minute;}// return second valueint Time::getSecond(){ int second; second = ssmLeft; return second;}// print Time in universal-time format (HH:MM:SS)void Time::printUniversal(){ cout << setfill( '0' ) << setw( 2 ) << getHour() << ":" << setw( 2 ) << getMinute() << ":" << setw( 2 ) << getSecond();}// 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() << ( ssm < 43200 ? " AM" : " PM" );}