第二周项目3-时间类
来源:互联网 发布:三菱plc模拟量编程 编辑:程序博客网 时间:2024/05/21 08:01
/**Copyright (c) 2014, 烟台大学计算机学院*All rights reserved.*文件名称:2-3.cpp*作者:高赞*完成日期:2015年 3 月 18 日*版本号:v1.0**/#include <iostream>using namespace std;class Time{public: void set_time( ); //设置时间 void show_time( ); //输出时间 void add_a_sec(); //加一秒 void add_a_minute(); //加一分 void add_an_hour(); //加一时 void add_seconds(int); //加n秒 void add_minutes(int); //加分 void add_hours(int); //加n时private: bool is_time(int, int, int); //这个成员函数设置为私有的,是合适的,请品味 int hour; int minute; int sec;};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_a_sec(){ if(sec==59) { sec=0; add_a_minute(); } else sec++;}void Time::add_a_minute(){ if(minute==59) { minute=0; add_an_hour(); } else minute++;}void Time::add_an_hour(){ if(hour==23) hour=0; else hour++;}void Time::add_seconds(int n){ n+=sec; sec=n%60; add_minutes(n/60);}void Time::add_minutes(int n){ n+=minute; minute=n%60; add_hours(n/60);}void Time::add_hours(int n){ n+=hour; hour=n%24;}int main( ){ Time t1; t1.set_time( ); t1.show_time( ); int choose,n; cout<<endl <<"1.加一秒"<<endl <<"2.加一分钟"<<endl <<"3.加一小时"<<endl <<"4.加n秒"<<endl <<"5.加n分钟"<<endl <<"6.加n小时"<<endl <<"0.退出"<<endl; while(1) { cout<<endl<<"选择:"; cin>>choose; switch(choose) { case 0: break; case 1: t1.add_a_sec(); t1.show_time( ); break; case 2: t1.add_a_minute(); t1.show_time( ); break; case 3: t1.add_an_hour(); t1.show_time( ); break; case 4: cout<<"输入n:"; cin>>n; t1.add_seconds(n); t1.show_time(); break; case 5: cout<<"输入n:"; cin>>n; t1.add_minutes(n); t1.show_time(); break; case 6: cout<<"输入n:"; cin>>n; t1.add_hours(n); t1.show_time(); break; default: cout<<"输入不符合要求!"<<endl; } if(choose==0) break; } return 0;}
0 0
- 第二周项目3-时间类
- 第二周项目3—时间类
- 第二周项目3-时间类
- 第二周项目3时间类
- 第二周上机项目3 时间类
- 第二周【项目3—时间类】
- 第二周项目3-时间类
- C++第二周项目3 时间类
- 第二周项目3-时间类
- 第二周上机时间项目3——时间类
- 第二学期第三周项目3--时间类
- 第二周 项目3-时间类(1)
- 第二周 项目3-时间类(2)
- 大一第二学期第2周【项目3:时间类】
- 第二周项目3——时间类(+1)
- 第二周项目3——时间类(+n)
- 第二周项目三 时间类
- 第二周项目三:时间类
- 第一周项目二
- 121.Best Time to Buy and Sell Stock
- android-测试so动态库(九)
- Mac OS X 下开发 Android 程序时使用 USB 连真机调试
- 找出最长回文子串
- 第二周项目3-时间类
- oracle的check约束
- Activity的四种启动模式和onNewIntent()
- LeetCode: Binary Tree Depth相关题目合集
- [Oracle]行列转换(行合并与拆分)
- 旱冰场造价
- Unity UGUI——Image(Image Type)
- 第2周项目1-旱冰场造价
- C++ 虚函数表解析