第三周项目3

来源:互联网 发布:500w双色球软件 编辑:程序博客网 时间:2024/06/01 17:19
#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 set_time();         void show_time();    private:       bool is_time(int, int, int);      int hour;      int minute;      int sec;  }; int main()  {   Time t1,t3;    int  n1,n2,n3;        Time &t2=t1;Time &t4=t3;    t1.set_time( );         t2.show_time( );cout<<"加一小时一分一秒后"<<endl;t1.add_an_hour();t1.add_a_minute();t1.add_a_sec();t2.show_time();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();    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( )        {   if(hour==-1){cout<<"你的时间超时,按enter重新输入";   fflush(stdin);    getchar();    main();}else{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<<"你错了"<<endl;}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){if(hour>24) hour=-1;else{if(hour==24)hour=0;else  hour=hour+n;}} //增加n秒钟void Time::add_minutes(int n){minute=minute+n;if(minute>=60){ hour+=1; minute-=60;}} //增加n分钟void Time::add_seconds(int n){sec=sec+n;if(sec>=60){ minute+=1; sec-=60;}}//增加n小时 


运行结果:


原创粉丝点击