第五周项目3——(2)时间类
来源:互联网 发布:和平网络电视手机破解 编辑:程序博客网 时间:2024/05/18 00:43
///// 2016.3.31 修改 /////
问题及代码:
/* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:main.cpp * 作 者:赵志君 * 完成日期:2016年3月31日 * 版 本 号:v1.0 * * 问题描述:为一个时间类增加功能 */#include<iostream>using namespace std;class Time{public: void set_time(); void show_time(); void add_seconds(int); void add_minute(int); void add_hour(int);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_hour(int n){ hour+=n; if(hour>23) hour=hour-24;}void Time::add_minute(int n){ minute+=n; if(minute>59) { add_hour(minute/60); minute=minute%60; }}void Time::add_seconds(int n){ sec=sec+n; if(sec>59) { add_minute(sec/60); sec=sec%60; }}int main(){ Time t1; t1.set_time(); t1.show_time(); t1.add_hour(4); t1.add_minute(50); t1.add_seconds(60); t1.show_time(); return 0;}
运行结果:
学习心得:第一做出的代码,有着许多严重的错误,比如:时间没有24时60分60秒这几个值,还有就是增加的值可能会大于24大于60,让下一个数量级增加的可能不只是1而已。
/////////////////////////////////////////////////////////////// / 以下为错误代码 / ///////////////////////////////////////////////////////////////
问题及代码:
/* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:main.cpp * 作 者:赵志君 * 完成日期:2016年3月28日 * 版 本 号:v1.0 * * 问题描述:为一个时间类增加功能 */#include<iostream>using namespace std;class Time{public: void set_time(); void show_time(); void add_seconds(int); void add_minute(int); void add_hour(int);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_hour(int n){ hour+=n; if(hour>24) hour=hour-24;}void Time::add_minute(int n){ minute+=n; if(minute>60) { minute=minute-60; hour++; }}void Time::add_seconds(int n){ sec=sec+n; if(sec>60) { sec=sec-60; minute++; }}int main(){ Time t1; t1.set_time(); t1.show_time(); t1.add_hour(4); t1.add_minute(5); t1.add_seconds(6); t1.show_time(); return 0;}
运行结果:
学习心得:注意时间的超限问题
0 0
- 第五周项目3——(2)时间类
- 第五周项目3——(1)时间类
- 第五周上机实践项目——项目3-时间类-(2)
- 第五周上机实践项目——项目3-时间类(2)
- 第五周项目3:时间类(2)
- 第五周项目3-时间类2
- 第五周实践项目3————时间类(2)
- 第五周项目(2)-时间类(3)
- 第五周项目3-时间类(2)
- 第五周项目3 时间类的练习(2)
- 第五周项目3-时间类(2)修改
- 第五周上机实践项目3(2):时间类
- 第五周项目3-时间类(2)
- 第五周 项目3-时间类(2)
- 第五周上机实践项目——项目3-时间类-(1)
- 第五周上机实践项目——项目3-时间类(1)
- 第五周实践项目3————时间类(1)
- 第五周上机时间项目——三角形类的构造函数(2)
- HNOI2016模拟 disk
- 数据库设计Step by Step (9)——ER-to-SQL转化
- c++实验2-1标准体重
- 【慕课笔记】2-3 JAVA线程初体验-隋唐演义实战开发(演员简介)
- 支付宝怎么做风险控制
- 第五周项目3——(2)时间类
- 快捷键的使用!!!
- APK反编译
- 数据库设计Step by Step (10)——范式化
- max * max
- C语言高级应用---操作linux下V4L2摄像头应用程序
- 树莓派 vnc设置
- 对象与对象
- 总结安装VMware和centOS6.5的相关问题。