三周任务三

来源:互联网 发布:2017ios福利软件 编辑:程序博客网 时间:2024/04/29 12:21
 
#include <iostream>      using namespace std;    class Time //定义一个时间类   {    public:       void set_time(); //输入时间       void show_time(); //显示时间       inline void add_a_sec();        inline void add_a_minute();        inline void add_an_hour();        void add_seconds(int);        void add_minutes(int);        void add_hours(int); private:        bool is_time(int,int,int);        int hour;        int minute;        int sec;    };    ////////////////////////////////////////int main()    {          Time t1;          Time &t2=t1;        t1.set_time( );          cout<<"现在时间是:";        t2.show_time( );            t1.add_a_sec();  //增加1秒钟          cout<<"增加1秒钟后:";        t1.show_time( );            t1.add_a_minute(); //增加1分钟          cout<<"增加1分钟后:";        t1.show_time( );            t1.add_an_hour(); //增加1小时          cout<<"增加1小时后:";        t1.show_time( );            t1.add_seconds(46); //增加40秒钟          cout<<"增加46秒钟后:";        t1.show_time( );            t1.add_minutes(18); //增加127分钟          cout<<"增加18分钟后:";        t1.show_time( );            t1.add_hours(16); //增加8小时          cout<<"增加16小时后:";        t1.show_time( );        return 0;    }         void Time::set_time()    {        char c1,c2;      cout<<" 请输入时间(格式hh:mm:ss) "<<endl;     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;    }    inline void Time::add_a_sec()    {        sec=sec+1;    }    inline void Time::add_a_minute()    {        minute=minute+1;    }    inline void Time::add_an_hour()    {        hour=hour+1;    }    void Time::add_seconds(int n)    {        int m;        sec=sec+n;        if(sec>59)        {            sec=sec%60;            m=sec/60;            add_minutes(m);        }    }    void Time::add_minutes(int n)    {        int m;        minute=minute+n;        if(minute>59)     {            minute=minute%60;            m=minute/60;            add_hours(m);        }    }    void Time::add_hours(int n)    {                hour=hour+n;      if(hour>24)        {            hour=hour-24;        }    }        运行结果:
 
 

原创粉丝点击