第四周任务2:多文件组织项目
来源:互联网 发布:java继承例子代码 编辑:程序博客网 时间:2024/04/30 22:11
//time.hclass Time { public: void set_time(); void show_time(); inline void add_a_sec(); //增加1秒钟 inline void add_a_minute(); //增加1分钟 inline void add_an_hour(); //增加1小时 void add_seconds(int); //增加n秒钟 void add_minutes(int); //增加n分钟 void add_hours(int); //增加n小时 private: bool is_time(int, int, int); int hour; int minute; int sec; };//增加一秒钟inline void Time::add_a_sec(){ sec++; if(sec>59) { add_a_minute();//大于59秒钟,也就是60秒钟,也就是一分钟 }}//增加一分钟inline void Time::add_a_minute(){ minute++; if(minute>59) { add_an_hour();//大于59分钟,也就是60分钟,也就是一小时 }}//增加一小时inline void Time::add_an_hour(){ hour++; if(hour>23) hour=0;//第二天}
//main.cpp#include <iostream >#include "time.h"using namespace std;int main(){ Time t1; t1.set_time(); t1.add_a_sec(); cout << "增加一秒的时间是:" << endl; t1.show_time(); t1.add_a_minute(); cout << "增加一分钟的时间是:" << endl; t1.show_time(); t1.add_an_hour(); cout << "增加一小时的时间是:" << endl; t1.show_time(); t1.add_seconds(123); cout << "增加123秒钟的时间是:" << endl; t1.show_time(); t1.add_minutes(56); cout << "增加56分钟的时间是:" << endl; t1.show_time(); t1.add_hours(3); cout << "增加3小时的时间是:" << endl; t1.show_time(); return 0;}
//time.cpp#include <iostream >#include "time.h"using namespace std;void Time::set_time(){ char ch1,ch2; while (1) { cin>> hour >> ch1 >> minute >> ch2 >> sec ; if(ch1 !=':'||ch2 !=':') cout << "格式不正确,请重新输入!" << endl; else if(!is_time(hour,minute,sec)) cout << "时间错误,请重新输入!" << endl; else break; }}//判断输入时间是否合法bool Time::is_time(int h,int m,int s){ if(h<0 || h>23 || m<0 || m>60 || s<0 || s>60) return false; else return true;}//显示时间void Time::show_time(){ cout << hour <<":"<< minute <<":"<< sec <<endl;}//增加n秒钟void Time::add_seconds(int n){ sec=sec+n; if(sec>59) { add_minutes(sec/60);//商为分钟数 sec=sec%60; //余数为秒数 }}//增加n分钟void Time::add_minutes(int n){ minute+=n; if (minute>59) { add_hours(minute/60); //商为小时数 minute%=60; //余数为分钟数 }}//增加n小时void Time::add_hours(int n){ hour+=n; if (hour>23) hour%=24; }