时间类

来源:互联网 发布:淘宝进货网哪个网站好 编辑:程序博客网 时间:2024/06/09 22:51
/** 程序的版权和版本声明部分* Copyright (c)2013, 烟台大学计算机学院学生* All rightsreserved.* 文件名称:score.cpp                           * 作    者:   赵 洋                         * 完成日期: 2013 年 03 月  15 日* 版本号: v1.0      * 输入描述:按要求输入一个时间* 问题描述:求增加一定时间后的时间* 输出:*/#include <iostream>using namespace std;class Time{public:void set_time( );   void show_time( );  inline int add_a_sec();inline int add_a_minute();inline int add_a_hour();int add_seconds();int add_minutes();int add_hour();private: bool is_time(int, int, int);int hour;int minute;int sec;};void Time::set_time( ) {char c1,c2;cout<<"请输入时间(格式hh:mm:ss)";while(1){cin>>hour>>c1>>minute>>c2>>sec;if(c1!=':'||c2!=':')cout<<"格式不正确,请重新输入"<<endl;else if (!is_time(hour,minute,sec))cout<<"时间非法,请重新输入"<<endl;else break;}}void Time::show_time( )      {cout<<hour<<":"<<minute<<":"<<sec<<endl;}bool Time::is_time(int h,int m, int s){if (h<0 ||h>24 || m<0 ||m>60 || s<0 ||s>60)return false;return true;}int main( ){Time t1;  Time &t2=t1;t1.set_time( );   t2.show_time( );t1.add_a_sec();t1.show_time();t1.add_a_minute();t1.show_time();t1.add_a_hour();t1.show_time();t1.add_seconds();t1.show_time();t1.add_minutes();t1.show_time();t1.add_hour();t1.show_time();return 0;}inline int Time:: add_a_sec(){sec=sec+1;while(sec>60)          {            sec-=60;            ++minute;        }       return 0;}inline int Time::add_a_minute(){    minute+=1;while(minute>60)         {            minute-=60;            ++hour;        }   return 0;}inline int Time::add_a_hour(){int h=1;hour+=1;while(hour>24)         {            minute-=24;            }   return 0;}int Time::add_seconds(){int s;cout<<"请输入要增加的秒数:";cin>>s;sec+=s;    while(sec>60)          {            sec-=60;            ++minute;        }           while(minute>60)         {            minute-=60;            ++hour;        }   while(hour>24){hour-=24;}return 0;}int Time::add_minutes(){int m;cout<<"请输入要增加的分钟数:";cin>>m;minute+=m;while(minute>60)         {            minute-=60;            ++hour;        }   while(hour>24){hour-=24;}return 0;}int Time::add_hour(){int h;cout<<"请输入要增加的小时数:";cin>>h;hour+=h;while(hour>24){hour-=24;}return 0;}


运行结果:

原创粉丝点击