玩时间
2014-03-16 11:37
99 查看
/* * 程序的版权和版本声明部分: * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:周经纬 * 完成日期:2014年 3月 16日 *版 本 号:v12.1 *玩时间 * 输入描述:无 * 问题描述:。 * 程序输出: * 问题分析:略 * 算法设计:略 */ #include <iostream> using namespace std; class Time { public: void set_time( ); void show_time( ); void add_a_sec() { sec=sec+1; if(sec==60) { sec=0; add_a_minute(); } }; void add_a_minute() { minute=minute+1; if(minute==60) { minute=0; add_an_hour(); } }; void add_an_hour() { hour=hour+1; }; void add_seconds(int); void add_minutes(int); void add_hours(int); private: bool is_time(int, int, int); //这个成员函数设置为私有的,是合适的,请品味 int hour; int minute; int sec; }; void Time::add_seconds(int s) { minute+=s/60; while(minute>=60) minute-=60; hour+=s/3600; while(hour>=24) hour-=24; sec+=s%60; } void Time::add_minutes(int m) { hour+=m/60; while(hour>=24) hour-=24; minute+=m%60; while(minute>=60) minute-=60; } void Time::add_hours(int h) { hour+=h%24; while(hour>=24) hour-=24; }; 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; } int main( ) { int se,mi,ho; Time t1; t1.set_time( ); t1.show_time( ); cout<<"增加了一秒钟结果是:"<<endl; t1.add_a_sec(); t1.show_time(); cout<<"增加了一分钟结果是:"<<endl; t1.add_a_minute(); t1.show_time(); cout<<"增加了一小时结果是:"<<endl; t1.add_an_hour(); t1.show_time(); cout<<"请输入要增加的秒数"<<endl; cin>>se; cout<<"增加了几秒钟结果是:"<<endl; t1.add_seconds(se); t1.show_time(); cout<<"请输入要增加的fen数"<<endl; cin>>mi; cout<<"增加了几分钟结果是:"<<endl; t1.add_minutes(mi); t1.show_time(); cout<<"请输入要增加的shi数"<<endl; cin>>ho; cout<<"增加了几小时结果是:"<<endl; t1.add_hours(ho); t1.show_time(); return 0; }
感悟:一定要每次编程都学点啊!!!!
相关文章推荐
- web项目经理手册-开发时间估算
- 统计程序执行使用时间
- 从授时服务器上获得时间
- 5.7学习笔记(关于选取本周的时间)
- 获取时间年月日
- Oracle时间日期操作
- mysql 日期操作 增减天数、时间转换、时间戳
- ASP.NET时间操作
- SQLite中的时间日期函数(转)
- sqlserver 取月初月末的时间
- jquery.cookie.js存与取以及过期时间设置
- ubuntu下的时间设定(硬件时间,系统时间,本地时间)
- android下使用aapt命令测试启动时间
- 在java中两个时间相减
- Windows 常用电脑快捷键大全 用起来很省时间哦!
- 打印当前系统时间
- caffe ssd中输入图片大小对于内存使用和运行时间的影响
- 固定日期与当前系统时间的比较 (QDate)
- 【MongoDB】mongo时间问题
- 正则表达式提取新闻发生时间