- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【2018年最新整理】停车场管理实验报告
HUNAN UNIVERSITY课程实验报告题目:停车场管理学生姓名:学生学号:专业班级:指导老师:完成日期:需求分析输入形式第一次输入一个正整数,代表停车场容量大小。然后输入三个值,分别为字符、正整数、正整数,中间用空格隔开,分别代表车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。其中字符必须为“A,D,E”三者之一。 输入格式为:“A15”、“D115”和“E 0 0“。 当用户输入的字符不是ADE或者输入的不是正整数时,提示用户输入错误并重新输入输出形式若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。 (注:本程序中默认停车一小时收费10元)程序功能本程序可通过用户输入的车辆信息,输出该车的停车位置或者停车时间及应缴费用测试数据请输入停车场容量:5A 1 1车停在停车场第 1 个位置A 2 2 车停在停车场第 2 个位置 A 6 6车停在停车场第 3 个位置D 1 4 停车时间:3 缴纳费用:¥30D 2 6 停车时间:3 缴纳费用:¥30F C 19.5 输入有误,请重新输入E 0 0概要设计抽象数据类型将每辆车模拟成一个对象,每个对象具有车牌号时间等属性,所以定义一个Car类存储这些信息class Car{public:intCarNumber;//车牌号码intArriveTime;//到达时间intLeaveTime;//离开时间}使用栈模拟停车场,其ADT设计:ADT stack 数据对象:Car类 数据关系:线性关系基本操作: void clear();//栈的初始化boolpush(const Car item);//栈的插入操作bool pop(Car it);//栈的删除操作booltopValue(Car it)//栈的顶层元素int length() const{return size};//栈的实际长度使用队列模拟场外通道,其ADT设计如下: ADT Queue 数据对象:Car类 数据关系:线性关系 基本操作:void clear();//队列的初始化boolenqueue(const Car it);//入队booldequeue(Car it);//出队int length() const{return size;};//队列的长度 2.算法基本思想①在该程序中,对停车场和场外通中每辆车停车的编号而言,他们有唯一的第一个元素和最后一个元素,而且除第一个元素以外的每个元素都有唯一的后继,除最后一个元素以外的每个元素都有唯一的前驱。因此这些元素具有线性关系。而且,对于停车场里面的汽车,他们逻辑次序是“先进后出,后进先出“的,且只在表头作插入和删除,所以可以使用栈来模拟停车场。而在场外通道中的汽车,他们是”先进先出”的,在一端插入另一端删除操作,所以可以用队列来模拟场外通道。当汽车离开时,在它之后进入的车辆必须先退出再按原次序进入停车场,所以需要定义另外一个临时栈存储这些元素。(本算法按用户输入的顺序进行车辆的停放,不是按车牌号码依次停放)②(1)当有汽车需要进停车场停车时,进行入栈操作,若停车场已满,即栈已满,则将车停在场外通道里,进行入队操作,并记下此时的时间ArriveTime;(2)当有汽车需要离开停车场时,对该车对应的元素进行出栈操作,并将后面进来的车辆所对应的元素进行出栈操作,将这些元素(除了需要离开的车对应的元素)存入另外一个栈,即为需要离开停车场的车让道,并记下此时的时间LeaveTime; (3)在需要离开停车场的车成功离开停车场时,将存储在临时栈的那些元素按照原来的顺序依次插入原来的栈; (4) 如果队列不为空(即停车场场外通道上有车,这些车需要进入停车场停车),进行入栈操作,即进行(1)操作;(5)通过LeaveTime 与ArriveTime的差计算停车时间和停车费用(本程序默认停车每小时10元);3.程序基本流程程序由个基本模块组成: 输入模块:输入停车场的容量和车辆的相关信息; 停车模块:根据车的信息,将该车对应的元素进行入栈操作; 离开模块:根据车的信息,将该车对应的元素进行出栈操作,并将后面的元素存入一个临时栈中; 输出模块:输出该车停车位置或停车费用;详细设计物理数据类型停车场容量为正整数,使用整型数据存储n;对于剩下的输入使用字符型、整型、整型存储,并将相应数据存入Car类class Car{public:intCarNumber;//车牌号码intArriveTime;//到达时间intLeaveTime;//离开时间}③定义一个Lin
您可能关注的文档
- 【2018年最新整理】乌兰察布路游园绿化工程竣工资料.doc
- 【2018年最新整理】乌审六业并举生态文明民生优先.doc
- 【2018年最新整理】世纪博瑞之地产广告精品赏析.ppt
- 【2018年最新整理】乌审召连接线总体开工报告.doc
- 【2018年最新整理】乌兰察布路游园绿化工程资料.doc
- 【2018年最新整理】世纪金榜数学答案.ppt
- 【2018年最新整理】乌审旗嘎鲁图镇城市集中供热扩建工程可行性研究报告.doc
- 【2018年最新整理】乌拉特中旗刘家无公害小麦园林苗木种植专业合作社章程.doc
- 【2018年最新整理】乌洛托品气氨脱油新工艺立项报告.doc
- 【2018年最新整理】乌海有机牧草种植操作规程.doc
文档评论(0)