阅读背景:

C++第二次实验

来源:互联网 
/*   
*文件名称:Ex1-3.cpp     
*作者:邓利超     
*完成日期:2016年3月30日     
*对任务及求解方法的描述部分:     
*输入描述:无     
*问题描述:1.根据要求增加类的功能 
*程序输出:按要求写出程序  
*问题分析:略     
*算法分析:略    
*/     
#include <iostream>
using namespace std;
class Time
{
public:
    void set_time( );
    void show_time( );
    void add_secend_minute_hour();
    void add_a_secend()
    {
        int q,w,e;
        q=secend+1;
        if(q<=59)
            q=q;
        else if(q=60)
        {
            q=0;
            w=minute+1;
            if(w<60)
                w=w;
            else if(w=60)
            {
                w=0;
                e=1+hour;
                {
                    if(e<24)
                        e=e;
                    else if(e>=24)
                    {
                        e=0;
                    }
                }
            }
        }
        cout<<"增加一秒后的时间为:"<<e<<":"<<w<<":"<<q<<endl;
    }
    void add_a_minute()
    {
        int r,t,y;
        r=minute+1;
        if(r<=59)
            r=r;
        else if(r=60)
        {
            r=0;
            t=hour+1;
            if(t<24)
                t=t;
            else if(t>=24)
            {
                t=0;
            }
            y=secend;
        }
        cout<<"增加一分后的时间为:"<<t<<":"<<r<<":"<<y<<endl;
    }
    void add_a_hour()
    {
        int sd,df,fg;
        sd=hour+1;
        if(sd<=23)
            sd=sd;
        else if(sd=24)
        {
            sd=0;
        }
        df=minute;
        fg=secend;
        cout<<"增加一小时后的时间为:"<<sd<<":"<<df<<":"<<fg<<endl;
    }
    void add_secend(int);
    void add_minute(int);
    void add_hour(int);
private:
    bool is_time(int, int, int);   //这个成员函数设置为私有的,是合适的,请品味
    int hour;
    int minute;
    int secend;
};
void Time::set_time( )
{
    char c1,c2;
    cout<<"请输入时间(格式hh:mm:ss)"<<endl;
    while(1)
    {
        cin>>hour>>c1>>minute>>c2>>secend;
        if(c1!=':'||c2!=':')
            cout<<"格式不正确,请重新输入"<<endl;
        else if (!is_time(hour,minute,secend))
            cout<<"时间非法,请重新输入"<<endl;
        else
            break;
    }
}
void Time::show_time( )
{
    cout<<hour<<":"<<minute<<":"<<secend<<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_secend(int s)
{
    int n;
    secend=secend+s;
    if(secend>=60)
    {
        n=secend/60;
        secend=secend%60;
        Time::add_minute(n);
    }
}
void Time::add_minute(int m)
{
    int n;
    minute=minute+m;
    if(minute>=60)
    {
        n=minute/60;
        minute=minute%60;
        Time::add_hour(n);
    }
}
void Time::add_hour(int h)
{
    int n;
    hour=hour+h;
    if(hour>=24)
    {
        hour=hour%24;
    }
    cout<<"改变后的时间为:"<<hour<<":"<<minute<<":"<<secend<<endl;
}
int main( )
{
    Time t1;
    t1.set_time( );
    cout<<"现在的时间为:";
    t1.show_time( );
    int x;
    do
    {
        cout<<"请选择执行程序"<<endl;
        cout<<"1.时分秒各增加一个单位"<<endl;
        cout<<"2.时分秒各增加任意个单位"<<endl;
        cout<<"输入任意非1和2的数退出程序"<<endl;
        cin>>x;
        if(x==1)
        {
            t1.add_a_secend();
            t1.add_a_minute();
            t1.add_a_hour();
        }
        else if(x==2)
        {
            int s,m,h;
            cout<<"请输入增加时间数:"<<endl;
            cout<<"小时:";
            cin>>h;
            cout<<"分钟:";
            cin>>m;
            cout<<"秒:";
            cin>>s;
            t1.add_secend(s);
            t1.add_minute(m);
            t1.add_hour(h);
        }
    }
    while((x!=1)||(x!=2));
    return 0;

}/*   
*文件名称:Ex1-3.cpp     
*作者:邓利超     
*完成日期:2



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: