时间类(2)

  1. #include<iostream>   
  2. using namespace std;  
  3. class Time  
  4. {  
  5. public:  
  6.     void set_time();  
  7.     void show_time();  
  8.     inline void add_a_minute(int n);  
  9.     inline void add_a_sec(int n);  
  10.     inline void add_a_hour(int n);  
  11. private:  
  12.     bool is_time(int m,int h,int s);  
  13.     int hour;  
  14.     int minute;  
  15.     int sec;  
  16. };  
  17. void Time::set_time()  
  18. {  
  19.     char c1,c2;  
  20.     cout<<"请输入时间(格式hh:mm:ss:)";  
  21.     while(1)  
  22.     {  
  23.         cin>>hour>>c1>>minute>>c2>>sec;  
  24.         if(c1!=':'||c2!=':')  
  25.         {  
  26.             cout<<"格式不正确,请重新输入"<<endl;  
  27.         }  
  28.         else if(!is_time(hour,minute,sec))  
  29.         {  
  30.             cout<<"格式非法,请重新输入"<<endl;  
  31.         }  
  32.         else  
  33.         {  
  34.             break;  
  35.         }  
  36.     }  
  37. }  
  38. void Time::show_time()  
  39. {  
  40.     cout<<hour<<":"<<minute<<":"<<sec<<endl;  
  41. }  
  42. bool Time::is_time(int h,int m,int s)  
  43. {  
  44.     if(h<0||h>24||m<0||m>60||s<0||s>60)  
  45.         return false;  
  46.     return true;  
  47. }  
  48. inline void Time::add_a_sec(int n)  
  49. {  
  50.     sec+=n;  
  51.     if(sec>60)  
  52.     {  
  53.         minute+=sec/60;  
  54.     }  
  55.     sec=sec%60;  
  56. }  
  57. inline void Time::add_a_minute(int n)  
  58. {  
  59.     minute+=n;  
  60.     if(minute>60)  
  61.     {  
  62.         hour+=minute/60;  
  63.     }  
  64.     minute=minute%60;  
  65. }  
  66. inline void Time::add_a_hour(int n)  
  67. {  
  68.     hour+=n;  
  69. }  
  70. int main()  
  71. {  
  72.     Time t1;  
  73.     t1.set_time();  
  74.     int n;  
  75.     cout<<"请输入增加的分、秒: ";  
  76.     cin>>n;  
  77.     t1.add_a_sec(n);  
  78.     t1.add_a_minute(n);  
  79.     t1.add_a_hour(n);  
  80.     t1.show_time();  
  81.     return 0;  
/*

*Copyright(c) 2016.烟台大学计算机与控制工程学院

*ALL rights  reserved.

*文件名称:test.cpp

*作者:杨驰

*完成日期:2016年3月29

*问题描述:增加三个成员函数,要求在类内定义

*/


#include<iostream>
using namespace std;
class Time
{
public:
    void set_time();
    void show_time();
    inline void add_a_minute(int n);
    inline void add_a_sec(int n);
    inline void add_a_hour(int n);
private:
    bool is_time(int m,int h,int s);
    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;
}
inline void Time::add_a_sec(int n)
{
    sec+=n;
    if(sec>60)
    {
        minute+=sec/60;
    }
    sec=sec%60;
}
inline void Time::add_a_minute(int n)
{
    minute+=n;
    if(minute>60)
    {
        hour+=minute/60;
    }
    minute=minute%60;
}
inline void Time::add_a_hour(int n)
{
    hour+=n;
}
int main()
{
    Time t1;
    t1.set_time();
    int n;
    cout<<"请输入增加的分、秒: ";
    cin>>n;
    t1.add_a_sec(n);
    t1.add_a_minute(n);
    t1.add_a_hour(n);
    t1.show_time();
    return 0;
}  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值