掌控时间的玩法!!!
来源:互联网 发布:菜鸟网络 股东 编辑:程序博客网 时间:2024/06/12 01:46
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: x.cpp * 作者:张浩* 完成日期: 2013年3 月17 日 * 版本号: v1.0 * 输入描述:输入时间,并输入增加多少秒,多少分钟,多少小时。 * 问题描述:运用类和对象,初步练习使用 * 程序输出:增加后的时间是多少。 */ #include <iostream>using namespace std;class Time{public:void set_time();void show_time();void add_seconds();//增加n秒void add_minutes();//增加n分钟void add_hours();//增加n小时 void add_a_sec()//增加1秒{sec+=1;if(sec==60){sec=00;minute+=1;if(minute==60){minute=00;hour+=1;if(hour==24){hour=00;}}}cout<<"增加1秒后,时间为:"<<endl;if(hour==00&&minute==00&&sec==00){cout<<"第二天 "<<endl;show_time();}elseshow_time();hour=h;minute=m;sec=s;} void add_a_minute()//增加1分钟{minute+=1;if(minute==60){minute=00;hour+=1;if(hour==24){hour=00;}}cout<<"增加1分钟后,时间为:"<<endl;if(hour==00&&minute==00){cout<<"第二天 ";show_time();}elseshow_time();hour=h;minute=m;sec=s;} void add_an_hour()//增加1小时{hour+=1;if(hour==24){hour=00;}cout<<"增加1小时后,时间为:"<<endl;if(hour==00){cout<<"第二天 ";show_time();}elseshow_time();hour=h;minute=m;sec=s;}private:bool is_time(int,int,int);int hour,h;int minute,m;int sec,s;};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{h=hour;m=minute;s=sec;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;elsereturn true;}void Time::add_seconds()//增加n秒{int n;cout<<"请输入增加的秒数:"<<endl;cin>>n;sec+=n;int a=0;while(sec>=60){sec-=60;++a;}minute+=a;a=0;while(minute>=60){minute-=60;++a;}hour+=a;a=0;while(hour>=24){hour-=24;++a;}cout<<"增加"<<n<<"秒后,时间为:"<<endl;if(a==0)show_time();else{cout<<"第"<<a+1<<"天 ";show_time();}hour=h;minute=m;sec=s;}void Time::add_minutes()//增加n分钟{int n;cout<<"请输入增加的分钟数:"<<endl;cin>>n;int a=0;minute+=n;while(minute>=60){minute-=60;++a;}hour+=a;a=0;while(hour>=24){hour-=24;++a;}cout<<"增加"<<n<<"分钟后,时间为:"<<endl;if(a==0)show_time();else{cout<<"第"<<a+1<<"天 ";show_time();}hour=h;minute=m;sec=s;}void Time::add_hours()//增加n小时{int n,a=0;cout<<"请输入增加的小时数:"<<endl;cin>>n;hour+=n;while(hour>=24){hour-=24;++a;}cout<<"增加"<<n<<"小时后,时间为:"<<endl;if(a==0)show_time();else{cout<<"第"<<a+1<<"天 ";show_time();}hour=h;minute=m;sec=s;}int main(){Time t1;Time &t2=t1;t1.set_time();//cout<<endl<<"现在的时间为:"<<endl;t2.show_time();t2.add_a_sec();t2.add_a_minute();t2.add_an_hour();t2.add_seconds();t2.add_minutes();t2.add_hours();return 0;}
运行结果:
心得体会:在编程中我遇到了一个“程序中缺少一个‘}’的问题”,但是真的把我给难住不,不过还好我已经解决了,这次真的是长见识了。
- 掌控时间的玩法!!!
- 如何掌控自己的时间和生活
- 如何掌控自己的时间和生活
- 成为自己时间的掌控者
- 成为自己时间的掌控者
- [时间管理]TED-如何掌控你的时间
- 管理时间,掌控生命
- 管理时间,掌控生命
- 管理时间,掌控生命
- Java的时间操作玩法实例若干
- Evernote新搭档Evertracker,掌控自己的时间(视频)
- Evernote 新搭档Evertracker,掌控自己的时间(视频)
- 《掌控你的时间和生活》 17-22读书笔记
- 考生经验谈:如何做好SAT阅读的时间掌控
- TED如何掌控你的时间(第一天)
- TED如何掌控你的时间(第二天)
- 【TED笔记】如何掌控你的自由时间
- 掌控像素的虚实
- 高级DirectDraw和位图图形
- html5笔记(4)canvas简单应用
- 迭代法实现开方运算
- contiki2.6之Makefile详细解读一
- 反射相关知识总结
- 掌控时间的玩法!!!
- MySQL卸载重装问题(could not start the service mysql)
- python学习--StringIO
- 简单工厂模式+反射来改进抽象工厂模式
- 开发者如何提升和推销自己
- autorelease pool 和 Runloop的理解
- A. Lunch Rush
- Understanding the Request Processing Lifecycle Phases
- JDBC连接SQL Server2005错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败