日程安排(多重继承+重载)
已有一个日期类Date,包括三个protected成员数据
int year;
int month;
int day;
另有一个时间类Time,包括三个protected成员数据
int hour;
int minute;
int second;
现需根据输入的日程的日期时间,安排前后顺序,为此以Date类和Time类为基类,建立一个日程类Schedule,包括以下新增成员:
int ID;//日程的ID
bool operator < (const Schedule & s2);//判断当前日程时间是否早于s2
生成以上类,并编写主函数,根据输入的各项日程信息,建立日程对象,找出需要最早安排的日程,并输出该日程对象的信息。
输入格式: 测试输入包含若干日程,每个日程占一行(日程编号ID 日程日期(****//)日程时间(::**))。当读入0时输入结束,相应的结果不要输出。
输入样例:
1 2014/06/27 08:00:01
2 2014/06/28 08:00:01
0
输出样例:
The urgent schedule is No.1: 2014/6/27 8:0:1
#include <iostream>
using namespace std;class Date {public:Date(int y, int mo, int d): year(y), month(mo), day(d) {}protected:int year;int month;int day;
};class Time {protected:int hour;int minute;int second;public:Time(int h, int mi, int s): hour(h), minute(mi), second(s) {}
};class Schedule: public Date, public Time {int ID;public:Schedule();Schedule(int y, int mo, int d, int h, int mi, int s, int id): Date(y, mo, d), Time(h, mi, s) {ID = id;}bool operator<(const Schedule &s2) {if (year < s2.year) {return 1;} else if (year == s2.year) {if (month < s2.month)return 1;else if (month == s2.month) {if (day < s2.day)return 1;else if (day == s2.day) {if (hour < s2.hour)return 1;else if (hour == s2.hour) {if (minute < s2.minute)return 1;if (second < s2.second)return 1;}}}}return 0;}void disp() {cout << "The urgent schedule is No." << ID << ':' << " " << year << '/' << month << '/' << day << ' ' << hour << ':' <<minute<< ':' << second <<endl;}
};int main() {int id, i;int y, mo, d, h, mi, s;char op1, op2, op3, op4;Schedule *sche[100];Schedule *early;int count = 0;cin >> id;while (id != 0) {cin >> y >> op1 >> mo >> op2 >> d >> h >> op3 >> mi >> op4 >> s;sche[count++] = new Schedule(y, mo, d, h, mi, s, id);cin >> id;}early = sche[0];for (i = 1; i < count; i++) {if ((*sche[i] < *early)) {early = sche[i];}}early->disp();return 0;
}
日程安排(多重继承+重载)相关推荐
- 第十五届全国大学生智能车安徽赛区参赛须知和竞赛日程安排
安徽赛区参赛须知 和竞赛日程安排 各参赛队伍: 2020年第15届全国大学生智能汽车竞赛安徽赛区竞赛定于2020年11月7日-11月8日在合肥职业技术学院汇心湖校区举行. 联系人:吕菲 Email:l ...
- 预告 | AIS (ACL, IJCAI, SIGIR) 2019 论文报告会日程安排
AlS2019是由中国中文信息学会青工委.杭州钱塘新区管委会.搜狗搜索联合举办的论文报告会. 会议将于2019年5月25日一5月26日,在杭州钱塘新区大创小镇国际创博中心内举办. 本次会议把ACL(国 ...
- 如何在outlook的日历Calendar里实现按照多时区显示日程安排
如果您在一家跨国企业工作,免不了和本国以外的其他区域的程序员打交道,在进行会议安排时需要综合考虑所有与会者时区. 微软的outlook里的日历显示- calendar display贴心的提供了多时区 ...
- 2007.2.14 日程安排
公元二零零七年二月十四日,农历腊月二十七,该天尤为特别,乃春节长假之初始.此外,该天将是片地鸳侣,漫天桃花之好时日,于是吾将广纳四方真气,闭关修炼,与世无争. 00:00 --7:10 ...
- 飞秋教程:日程安排记事提醒
点击主面板上面的"日程安排记事提醒"按钮进入 新建日程记事 双击日程中的某天,对此日程进行记事安排. 也可以对进行批量增加,如指定每月.农历每年的生日等. 查看全部提醒和记事 对日 ...
- FullCalendar 一: 日程安排FullCalendar
FullCalendar是一款基于jQuery的日历插件,适用于各种日程安排.工作计划等场景,您可以很方便的查看查看待办事项,标记重要事项以及绑定点击和拖动事件,能快速的整合到您的项目中,本文将简单介 ...
- ieda中快捷搜索_快捷指令(07)早上好(三)播报当日日程安排。
机型:iPhone XR 系统:iOS13.2.3 快捷指令最新版 今天开始着手制作知友们留言最多的"早上好",今天先学习第三部分:播报当日日程安排. 首先我们来播放一下查看下效果 ...
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
Laura Rose , QE Manager, Rational<?XML:NAMESPACE PREFIX = O /> <?XML:NAMESPACE PREFIX = ST1 ...
- 使用日程安排自动化测试来更好地管理时间与资源
简介:在一个自动化测试系统中按日程安排一项测试是实现在特定的日期和时间内执行任务的重要组成部分.它不但能够帮助您更有效地使用测试资源,而且能够帮助您监视测试结果.本文介绍了关于这方面一些应当考虑的事项 ...
- 2020第二十四届软博会数据治理专场演讲嘉宾及日程安排
第二十四届中国国际软件博览会之"数据治理与流通高峰论坛暨全国DCMM现场工作会"将于11月12日在杭州举办.本次会议由中国电子信息行业联合会.浙江省经济和信息化厅.杭州市人民政府主 ...
最新文章
- 吴恩达,45岁生日快乐!提出著名二八定律:80%数据+20%模型=更好的AI
- android 中的PopupWindow
- Excahange2007邮件收件人的管理
- [云炬创业基础笔记]第二章创业者测试4
- java(1)——用notepad++编译java(javac.exe)
- php列表顺序,保存列表的顺序(php / zend / jquery)
- 二分搜索,欧几里德算法
- 时间和日期的JS库Day.js入门教程
- librdkafka官方Demo在Windows上运行与使用
- 关闭app服务器系统,ios12系统服务哪些关掉
- 阻抗测试仪软件,特性阻抗测试仪 阻抗测试仪 Tektronix 泰克 TDR DSA8300
- Love Letter
- 小程序源码:炫酷恶趣制作神器-多玩法安装简单
- 安科瑞水电气三表集抄电能管理系统在阿克希龙公司的设计方案
- ppt给图片增加高斯模糊_PPT图片处理小技巧
- 好游戏必须知道玩家需要什么?
- 光纤宽带 和 ADSL宽带有什么区别?
- ShardingSphere使用(一)
- 线性代数中的余子式、代数余子式、行列式
- echarts中国地图飞线
热门文章
- 台式计算机把光驱改成硬盘,笔记本电脑光驱怎么改成硬盘|笔记本光驱位换成硬盘方法...
- JVM调优工具的使用方法
- 7-7 选民投票 (20分)(不区分大小写投票)
- 基于Java Socket的局域网聊天系统
- iphone11返回上一级手势怎么设置_iPhone11怎么返回手势操作
- 两个字符串的最长公共子串(C++)
- 【毕业设计】单片机智能快递柜系统 - stm32 嵌入式 物联网
- 视频教程-H3CNE认证网络工程师视频课程-H3C认证
- 32g的u盘速度测试软件,ToShiBa 东芝4G 8G 16G 32G 64G U盘量产教程(已测)
- 以太网未识别的网络win10_win10系统遇到以太网无法识别网络如何解决