第三周项目3-时间类

来源:互联网 发布:株洲数控编程工资待遇 编辑:程序博客网 时间:2024/06/02 09:43
/**程序的版权和版本声明部分:*Copyright(c)2014,烟台大学计算机学院学生*All rights reserved.*文件名称:时间函数*作者: 张凯*完成日期:2014年 03月15号*版本号:v1.0*对任务及求解方法的描述部分:*输入描述:*问题描述:制作一个时刻表*程序输出:*问题分析:*算法设计:*/#include <iostream>using namespace std;class Time{private:    bool is_time(int, int, int);    int hour;    int minute;    int sec;    public:    void set_time( );    void show_time( );    void add_seconds(int);    void add_minutes(int);    void add_hours(int);    void add_a_sec()    {        if (sec<60)        {            sec++;            if (sec>60)            {                minute++;               if (minute>60)               {                   hour++;                   minute-=60;                   sec-=60;                }            }          }        }     void add_a_minute()     {         if (minute<60)         {         minute++;         if (minute>60)          {              hour++;              minute-=60;}         }     }     void add_a_hour()     {         if (hour<24)         {             hour++;         }         else         {             cout<<"输入格式错误!!!"<<endl;         }     }};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_seconds(int n){    if(sec+n<60)    {        sec+=n;        if (sec>60)        {            minute ++;           if (minute>60)            {   hour++;                minute-=60;                sec-=60;            }             }    }else    {         cout<<"输入错误";    }}void Time ::add_minutes(int n){    if (minute+n<60)    {        minute=minute+n;        if (minute>60)        {            hour++;            minute-=60;        }    }else    {        cout<<" 输入错误";    }}void Time::add_hours(int n){    if (hour+n<=24)    {        hour+=n;    }else        {            cout<<"格式不对!!!"<<endl;        }    }int main( ){    int n;    Time t1;    t1.set_time( );    t1.show_time( );    cout<<"1增加一秒钟的时间为:";    t1.add_a_sec();    t1.show_time();    cout<<"2增加一分钟为:";    t1.add_a_minute();    t1.show_time();    cout<<"3增加一小时为:";    t1.add_a_hour();    t1.show_time();    cout<<"4请输入n的值:";    cin>>n;    cout<<"增加n秒后的时间为:";    t1.add_seconds(n);    t1.show_time();    cout<<" 5请输入n的值";    cin>>n;    cout<<" 增加n分钟的值为:";    t1.add_minutes(n);    t1.show_time();    cout<<" 6请输入n的值:";    cin>>n;    cout<<" 增加n小时的值为:";    t1.add_hours(n);    t1.show_time();    return 0;}

运行结果 


心得体会:(>^ω^<)

0 0
原创粉丝点击