第五周项目3-时间类

来源:互联网 发布:广州管家婆软件 编辑:程序博客网 时间:2024/05/18 00:19
/* *Copyright(c) 2016,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:my.cpp *作    者:张瀚文 *完成日期:2016年4月6日 *版 本 号:v1.0 * *问题描述:1.在原类的基础上,在类内增加以下成员函数(将是内联成员函数)             add_a_sec()//增加一秒             add_a_minute()//增加一分             add_a_hour()//增加一小时             在main()函数中,调用新增加的成员函数,以测试扩充后的功能.           2.在增加三个成员函数,要求在类内声明,类外定义。             add_sec(int )//增加n秒             add_min(int )//增加n分             add_hour(int )//增加n小时 *输入描述: *程序输出: */#include <iostream>using namespace std;class Time{public:    void set_time();  void add_a_sec()    {        sec++;        if(sec>59)       {        sec=0;        add_a_minute();       }    }     void add_a_minute()     {         minute++;         if(minute>59)        {         minute=0;         add_an_hour();        }     }    void add_an_hour()    {        hour++;        if(hour>23)            hour=0;    }    void show_time();private:    bool is_time(int,int,int);   int hour;    int minute;    int sec;};void Time::set_time(){    char c1,c2;    cout<<"please input time(hh:mm:ss)";    while(1)    {        cin>>hour>>c1>>minute>>c2>>sec;        if(c1!=':'||c2!=':')           cout<<"the type is worng"<<endl;        else if(!is_time(hour,minute,sec))            cout<<"time is ille,please input again"<<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;    t1.set_time();    cout<<"the present time is:";    t1.show_time();    cout<<endl<<"add one second:";    t1.add_a_sec();    t1.show_time();    cout<<endl<<"add one minute:";    t1.add_a_minute();    t1.show_time();    cout<<endl<<"add an hour";    t1.add_an_hour();    t1.show_time();    return 0;}

————————————————————————————————————————————————————————————————

2.


#include <iostream>using namespace std;class Time{public:    void set_time();  void add_sec(int n)    {       sec+=n;  if(sec>59)    sec%=60;  }     void add_minute(int n)     {           minute+=n;  if(minute>59)    minute%=60;     }    void add_hour(int n)    {          hour+=n;  if(hour>24)    hour%=24;    }    void show_time();private:    bool is_time(int,int,int);   int hour;    int minute;    int sec;};void Time::set_time(){    char c1,c2;    cout<<"please input time(hh:mm:ss)";    while(1)    {        cin>>hour>>c1>>minute>>c2>>sec;        if(c1!=':'||c2!=':')           cout<<"the type is worng"<<endl;        else if(!is_time(hour,minute,sec))            cout<<"time is ille,please input again"<<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(){  int a_sec,a_min,a_hour;    Time t1;    t1.set_time();    cout<<endl<<"the present time is:";    t1.show_time();   cout<<"please input the add time(second minute hour)";     cin>> a_sec>>a_min>>a_hour;     t1.add_sec(a_sec);     cout<<endl<<"Add "<<a_sec<<"second,the time is:";     t1.show_time();     t1.add_minute(a_min);     cout<<endl<<"Add "<<a_min<<"minute,the time is:";     t1.show_time();     t1.add_hour(a_hour);     cout<<endl<<"Add "<<a_hour<<"hour,the time is:";     t1.show_time();    return 0;}


0 0