码迷,mamicode.com
首页 > 其他好文 > 详细

时间类(增加n)

时间:2015-03-17 12:27:59      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:博客   ios      class   

  输入代码:

/*
*Copyright (c)2015,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:sum123.cpp
*作    者:林海云
*完成日期:2015年3月17日
*版 本 号:v2.0
*
*问题描述:阅读、运行程序后,按要求扩充类的功能,请在原类基础上,在类内增加下列成员函数(将是内置成员函数)
 add_a_sec()  //增加c秒钟
 add_a_minute() //增加b分钟
 add_an_hour() //增加a小时
在main()数中,调用新增加的成员函数,以测试扩充后的功能。

*程序输入:时间。
*程序输出:改变后的时间。
*/
#include<iostream>
using namespace std;
class Time
{
public :
    void   set_time();
    void  showtime();
    void add_a_sec(int n);
    void add_a_minute(int n );
    void add_an_hour(int n);
private :
    bool is_time(int, int, int);
    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<<"输入的时间格式不正确,请重新输入:";
        else if(!is_time(hour,minute,sec))
            cout<<"输入的时间非法,请重新输入:";
        else
            break;
    }
}
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 ;
    else
        return true;
}
void  Time::showtime()
{
    cout<<hour<<":"<<minute<<":"<<sec<<endl;
}
void Time::add_a_sec(int n)
{
    sec+=n;
    if(sec>59)
    {
        add_a_minute(sec/60);
        sec=sec%60;
    }
}
void Time::add_a_minute(int n)
{
    minute+=n;
    if(minute>59)
    {
        add_an_hour(minute/60);
        minute=minute%60;
    }
}
void Time::add_an_hour(int n)
{
    hour+=n;
    if(hour>24)
        hour=hour%24;
}
int main()
{
    Time t;
    int a,b,c;
    t.set_time();
    cout<<"请输入您要增加的时,分,秒数:";
    cin>>a>>b>>c;
    t.add_a_sec(c);
    t.add_a_minute(b);
    t.add_an_hour(a);
    cout<<"增加改变后的时间是:";
    t.showtime();
    return 0;
}





运行结果:

技术分享

时间类(增加n)

标签:博客   ios      class   

原文地址:http://blog.csdn.net/linhaiyun_ytdx/article/details/44339389

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!