没有合适的资源?快使用搜索试试~ 我知道了~
设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按其到达时间的先后顺序,依次由北向南排队(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车辆内停满n辆汽车,则后来的汽车只能在门外的便道等候。一旦有车开走,则排在便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后开入的车辆必须退出车场让路。待该辆车开出大门后,退出的车辆再按原次序进入车场。离开停车场的每辆车必须按它停留的时间交纳费用。
资源推荐
资源详情
资源评论
计算机软件技术基础课程设计:停车场管理
停车场管理
【问题描述】
设停车场内只有一个可停放 辆汽车的狭长通道,且只有一个大门可供汽车进出。汽
车在停车场内按其到达时间的先后顺序,依次由北向南排队(大门在最南端,最先到达的
第一辆车停放在车场的最北端),若车辆内停满 辆汽车,则后来的汽车只能在门外的便
道等候。一旦有车开走,则排在便道上的第一辆车即可开入。当停车场内某辆车要离开时
在它之后开入的车辆必须退出车场让路。待该辆车开出大门后,退出的车辆再按原次序进
入车场。离开停车场的每辆车必须按它停留的时间交纳费用。
【需求分析】
本次设计要求实现简单的模拟停车场,并且能够根据车辆进出实际情况而灵活应对。
即若车辆内停满 辆汽车,则后来的汽车只能在门外的便道等候。一旦有车开走,则排在
便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后开入的车辆必须退出
车场让路。离开停车场的每辆车必须按它停留的时间交纳费用。在此要求基础上,本程序
作出了创新改进,即把车辆分为大型,中型和小型三种,按车型收费。此做了改进后就更
与实际相符了。
停车场采用栈式结构,停车场外的便道采用队列结构(即便道就是等候队列)。
停车场的管理流程如下:
1 当车辆要进入停车场时,检查停车场是否已满,如果未满则车辆进栈(车辆进
入停车场);如果停车场已满,则车辆进入等候队列(车辆进入便道等候)。
2 当车辆要求出栈时,该车到栈顶的那些车辆先弹出栈(在它之后进入的车辆必
须先退出车场为它让路),再让该车出栈,其他车辆再按原次序进栈(进入车
场)。当车辆出栈完毕后,检查等候队列(便道)中是否有车,有车则从队列
头取出一辆车压入栈中。
计算机软件技术基础课程设计:停车场管理
【设计目的】
1.全面地理解数据结构和算法的概念,掌握设计数据结构与算法的主要原理和方法。
2.理解线性表的顺序存储和链式存储,理解数组与单链表表示表的优缺点。
3.深入了解数据、数据结构基本算法等概念及算法。
4.获得求解数据结构问题的能力,能从实际问题中抽象出数学模型,选择合适数据结构
计算机表示,再把解决问题的算法程序化,从而解决问题。
5.研究解决常用问题的经典算法,提高使用计算机解决问题的能力。
6.具有较高分析问题的能力;利用数据结构的知识能够解决常见实际问题。
7.提高使用计算机解决问题的能力。从现实世界的问题中抽象出适当的数学模型,以合
适的数据结构在计算机内部表示,然后设计一个解此数学模型的算法,再以一种程序
设计语言编程实现。
8.具有良好的编程风格。
【概要设计】
1. 设计方案
采用 语言的设计方法:首先根据设计要求确定设计思路画出流程图,把整个程序分
为几个小模块,在每一个模块里首先分析都需要哪些变量,再根据要求确定需要什么
方法实现。设计完每一个小模块后,再整体设计即把每一个模块连接在一起。最后 完
成该模拟的逻辑设计和实现。
2. 问题分析:
① 由题目要求:设停车场内只有一个可停放 辆汽车的狭长通道,且只有一个大门可
供汽车进出。考虑到堆栈只能由栈顶压入,退出所以我选择利用堆栈的方法。并且当
栈的最大容量不能估计是,可以用链表作为栈的存储结构,即链栈。所以最终采用的
链栈来作为停车场内的车辆的进出方式。
计算机软件技术基础课程设计:停车场管理
② 由题目要求:若车辆内停满 辆汽车,则后来的汽车只能在门外的便道等候。一旦
有车开走,则排在便道上的第一辆车即可开入。由于队这一特殊的线性表只允许一端
进行插入,在另一端进行删除,即合现实生活中的排队现象相似,而这正符合题目中
便道车辆进出的方式,而又考虑到链队不用预先考虑容量,所以我选择链队作为便道
内车辆的进出方式。
3.停车场的管理流程如下:
① 当车辆要进入停车场时,检查停车场是否已满,如果未满则车辆进栈(车辆进入停
车场);如果停车场已满,则车辆进入等候队列(车辆进入便道等候)。
② 当车辆要求出栈时,该车到栈顶的那些车辆先弹出栈(在它之后进入的车辆必须先
退出车场为它让路),再让该车出栈,其他车辆再按原次序进栈(进入车场)。当车
辆出栈完毕后,检查等候队列(便道)中是否有车,有车则从队列头取出一辆车压入
栈中。
4.方案提出:
经 过 分 析 , 整 个 系 统 中 可 以 得 出 三 个 实 体 类 : 车 辆 、 停 车 场
、 便 道 , 一 个 抽 象 类 : 停 车 管 理 系 统
。
下面依次介绍各个类的具体成员(包括成员变量和成员函数)。
① 车辆:
成员变量:;车牌号
!"进栈时间(即进入停车场的时间)
!#"出栈时间(即离开停车场时间)
成员函数:$%&'%()构造函数
② 停车场
成员变量:*%&+, 栈长,即系统中的 -
'$"定义栈顶
③ 便道:
成员变量:-'%.%"定义队头88888
/
计算机软件技术基础课程设计:停车场管理
-'%."定义队尾8
【实验流程图】
注:
选择 00/01:
.车辆到达
.车辆离开
/.列表打印信息
3 2
1
3
<MAX
>MAX
2
1
选择 00/01
输入车牌号
到达时间
车场位置
离开时间
显示离开车辆
的信息及费用
车场已满 2 请
在便道等待
选择 00
/
车场内车辆
信息列表
便道内车辆
信息列表
退出程序
选 择 车
型
便道车辆进入车
场,开始计时
1
剩余17页未读,继续阅读
资源评论
mufangmufang
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功