Posts Tagged: 旅游管理系统
-
六 24, 2010
3 Comments旅游管理系统-Author:GuoJianWei CCUT
长春工大 软件学院 c++实验的最后一个题,代码来自 郭健伟老师。。。同学们好好看看吧,基本上c++的东西里面全用上了。try…catch,函数指针,虚函数,重载操作符。。。。 基本描述 1.统计天数 旅游公司要统计每个人出差在外的总天数,手头上有每个人出差在外的起始和回来的考勤时间,给定一个日期区间,将其所有的天数统计出来。 2.推排日期 旅游公司要估计某个导游何时可以接受下一次任务,便开列了一张当前导游们还需要几天才能将手头工作做完的清单,请按接受任务的早晚列出导游名字和可以接受任务的日期。 3.确定天数 某月某日是个重要的旅游旺日,为了准备好迎接这个日子,须知道该日子离现在还有几天,以便倒计时。 4.星期几 某个日子是星期几,这是首先应该知道的,甚至是几年以后的某一天也不例外。 5.安排会议 会议议程横跨某个时间区间,但是已经有一些日子安排了其他工作,需要在没有被安排的时间段中,找到最合适开会的时间。 为了使开会时间最大限度地避开其他占用时间(包括休假),会议安排应选择尽可能长的未安排时间区段,并且从中间划出开会区段。如果最长的未安排区段有多个,则应尽量早安排会议,所以如果两边间隔不对称,则也应取靠前安排。这就是所谓的最适合开会的时间。 请根据以上5点编写程序,该程序基于菜单驱动。 输入描述 1.统计天数 输入含有若干组数据,每组数据包括名字,日期和出去(Out)或回来(Back)的标记。名字长度在[1,10]之间,日期为合法的YYYY-MM-DD格式日期。对于某个人来说,出去与回去的日期成对出现,先出去后回来,出去和回来的日期区间也不交叉。 2.推排日期 第一行为当前日期(YYYY-MM-DD),以后为每个导游名字(长度区间为[1,10])以及没完成当前工作所需要的天数n(0<<n<100)。 3.确定天数 第一行为当前日期(YYYY-MM-DD),后面有若个行日期,分别表示各个节日名称(没有空格隔开的字串)和日期(YYYY-MM-DD)。 4.星期几 输入有若干日期(YYYY-MM-DD),日期之间以空格和或者回车隔开。 5.安排会议 第一行为两个日期和一个整数,表示会议安排只能是这个日期区段中的某个子集,整数表示会议需要的天数。 接着若干行中每行用两个日期(YYYY-MM-DD)表示时间区间,那都是已经有了其他安排的日期,如果行中只有一个日期,说明该时间区段只包含一天。 输出描述 1.统计天数 按名字字典序输出,输出其名字和合计天数,每个人的数据占一行。名字按10位的宽度并且左对齐,而合计天数按5位的宽度并且右对齐。在开始输出之前,首先输出一行”统计天数”。 2.推排日期 按完成工作的先后顺序排序,如果完成工作日期相同,则按照名字的字典顺序排列。每个人的信息占一行,名字按宽度11个字符左对齐。在开始输出之前,首先输出一行”推排日期”。 3.确定天数 按节日离当前日期的远近排列,近者靠前。若两个日期一样,则按照字典序排列。每个节日名称与天数列一行,节日名称与天数之间空一行。在开始输出之前,首先输出一行”确定天数”。 4.星期几 输出每个日期所对应的星期几,星期几以三位英文缩写字母表示,每个日期占一行。在开始输出之前,首先输出一行”星期几”。 5.安排会议 要从未被安排的日期区段中寻找最适合开会的时间,输出该日期(MM-DD-YYYY)。在开始输出之前,首先输出一行”安排会议”。 样本输入 1.统计天数 Smith 2010-03-06 out Jone 2010-05-08 out Smith 2010-06-08 out2.推排日期 2010-06-10 Jone 12...