Программирование и основы алгоритмизации. Макаров В.Л. - 107 стр.

UptoLike

Составители: 

107
матах. Затем функция-элемент setTime пытается дать данным-элементам не-
правильные значения, и время снова печатается в обоих форматах.
// Определение класса Time
class Time {
public :
Time ( ); // конструктор
void setTime(int, int, int ); // установка часов, минут и секунд
void printMilitary( ); // печать времени в военном и
void printStandard( ); // стандартном форматах
private:
int hour ; // 0 – 23
int minute; // 0 – 59
int second; // 0 – 59
};
/*Конструктор Time ( ); присваивает
нулевые начальные значения
каждому элементу данных и обеспечивает согласованное начальное
состояние всех объектов Time ( ); */
Time : : Time( ) { hour = minute = second = 0; }
/* Задание нового значения Time в военном формате.
Проверка правильности значений данных.
Обнуление неверных значений. */
void Time : : setTime( int h, int m, int s )
{
hour = ( h>= 0 && h < 24 ) ? h : 0;
minute = (m>=0 && m<60) ? m : 0;
second = (s >= 0 && s < 60) ? s : 0;
}
// Печать времени в военном формате
void Time : : printMilitary( )
{
cout << ( hour < 10 ? "0" : "") << hour
<< ":" << (minute < 10 ? "0" : "") << minute
<< ":" << (second < 10 ? "0" : "") << second ;
}
// Печать времени в стандартном
формате
void Time : : printStandard( )
{
cout << ( (hour == 0 || hour == 12 ) ? 12 : hour %12 )
<< ":" << (minute < 10 ? "0" : "") <<minute
<< ":" << (second < 10 ? "0" : "") << second ;
<< (hour < 12 ? "АМ " : "РМ ") ;
}
Рис. 16.3