/*
*文件名称: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