第三周项目三修改

来源:互联网 发布:啊d网络工具包教程 编辑:程序博客网 时间:2024/05/01 21:05
#include <iostream>   #include<stdio.h>  using namespace std;    class Time    {    public:    inline void add_a_sec();  //增加1秒钟  inline void add_a_minute(); //增加1分钟  inline void add_an_hour(); //增加1小时  void add_seconds(int ); //增加n秒钟  void add_minutes(int); //增加n分钟  void add_hours(int); //增加n小时 void addn();     void set_time();           void show_time();        private:         bool is_time(int, int, int);        int hour;        int minute;        int sec;    };   int main()    {   Time t1;          Time &t2=t1;      t1.set_time( );           t2.show_time( );      cout<<"加一小时一分一秒后"<<endl;      t1.add_an_hour();      t1.add_a_minute();      t1.add_a_sec();      t2.show_time();  t1.addn();    return 0;    }      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;    }    void Time::add_an_hour() //增加1秒钟  {      hour=hour+1;      if(hour>24){  cout<<"你的时间超时,按enter重新输入";         fflush(stdin);      getchar();      addn();    }      else{          if(hour==24)              hour=0;          }    }    void Time::add_a_minute(){      minute=minute+1;      if(minute==60)      minute=0;  } //增加1分钟  void Time::add_a_sec(){       sec=sec+1;      if(sec==60)          sec=0;  } //增加1小时  void Time::add_hours(int n){  hour=hour+n;if(hour>24)  {cout<<"你的时间超时,按enter重新输入";         fflush(stdin);      getchar();      addn();}  } //增加n秒钟  void Time::add_minutes(int n){      minute=minute+n;  if(minute>=60){      hour+=(minute/60);       minute=minute%60;  } if(hour>24) {  cout<<"你的时间超时,按enter重新输入";         fflush(stdin);      getchar();      addn(); }} //增加n分钟  void Time::add_seconds(int n){  sec=sec+n;  if(sec>=60){       minute+=(sec/60);       sec=sec%60; if(minute>=60){      hour+=(minute/60);       minute=minute%60;} if(hour>24) { cout<<"你的时间超时,按enter重新输入";     fflush(stdin);      getchar();      addn(); } if(hour==24)   hour=0;}  }//增加n小时  void Time::addn(){Time t3;Time &t4=t3;int n1,n2,n3;     t3.set_time( );        cout<<"增加几个小时";      cin>>n1;      t3.add_hours(n1);      cout<<"增加几分钟";      cin>>n2;      t3.add_minutes(n2);      cout<<"增加几秒";      cin>>n3;      t3.add_seconds(n3);        t4.show_time(); }


运行结果:

 

原创粉丝点击