第五周项目3-时间类(增加n秒)
来源:互联网 发布:海岛奇单导弹升级数据 编辑:程序博客网 时间:2024/05/17 08:16
代码:
#include<iostream>using namespace std;class Time { public: void set_time(); void show_time(); void add_a_sec(int n1); void add_a_minute(int n2); void add_a_hour(int n3); private: int sec; int minute; int hour; bool is_time(int,int,int); };void Time::set_time(){char c1,c2; cout<<"请输入时间(格式hh:mm:ss)"<<endl;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;}inline void Time::add_a_sec(int n1){ if(n1+sec>59) { sec=(n1+sec)%60; minute=(n1+sec)/60+minute; if(minute>59) { hour++; minute=0; } } else { sec=sec+n1; }}inline void Time::add_a_minute(int n2){ if(n2+minute>59) { minute=(n2+minute)%60; hour=(n2+minute)/60+hour; if(hour>23) { hour=hour-24; } } else { minute=minute+n2; }}inline void Time::add_a_hour(int n3){ if(n3+hour>23) { hour=(n3+hour)%24; } else { hour=hour+n3; }}int main() { Time t1; t1.set_time(); t1.add_a_sec(1); t1.add_a_minute(11); t1.add_a_hour(33); t1.show_time(); return 0; }运行测试:
0 0
- 第五周项目3-时间类(增加n秒)
- 第五周项目3-时间类(增加1秒)
- 第一周 项目三时间类(增加n秒)
- 第1周-项目3-时间类(增加n)
- 第二周项目三 时间类(增加时分秒)
- 时间问题,增加n秒n分n小时
- 第五周项目1(3)N
- 第一周项目三 时间类(1)增加一秒
- 第一周项目三 时间类(2)增加多秒/分/时
- 时间类(增加n)
- 第五周项目3:时间类(2)
- 第五周项目3:时间类(1)
- 第五周项目3-时间类2
- 第五周项目3-时间类
- 第五周项目3-时间类
- 第五周项目训练3 时间类
- 第五周项目(2)-时间类(3)
- 第五周项目3-时间类(1)
- 函数节流闭包封装
- spring(3)
- 数据库SQL语句总结
- POJ 1308
- openshift 建站的总结
- 第五周项目3-时间类(增加n秒)
- 推荐系统学习01-引子
- Codeforces Round #346 (Div. 2) - C Tanya and Toys
- 【day0402】C++引用形参
- Python queue
- UVA 11806 Cheerleaders (容斥原理+二进制枚举)
- 项目源码怎么看或怎么移植的
- myeclipse中的注释
- 硬件加速 setlayertype