




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构课程设计说 明 书学 院: 信息科学与工程学院 班 级: 计算机11-3 完 成 人:姓 名:徐海杰 学 号:201101050323姓 名:薛德利 学 号:201101050324指导教师: 彭延军 山 东 科 技 大 学2012年12月12日课 程 设 计 任 务 书1、 课程设计题目: 救护车调度模拟系统 二、课程设计应解决的主要问题:(1)模拟每一起病人呼救派车往救接人回院的过程 (2)显示每辆救护车的状态(待命、往救、送院可能还有返点)和每个病人的状态(待派车、待接、送院途中),显示各医院的待命救护车队列 (3)实时显示当前的病人平均接送时间和平均派车延迟时间以及已送达病人数。 (4)救护车应按最快的路线接送病人。 (5)呼救事件发生的间隔时间和地点都是随机的(其发生频度先给一个省缺值,可实时调整)。 (6)点数m、点名、路段数e和每段长度以及医院点的名称都由教师以文本文件形式给出,格式为: m n e ABCDEFGH (m个点名称,大小写代表不同点) AEGHK (n个医院名称) AB11,AC15,EG9, FK24, (e条路段及长度) 救护车总数及分派方案在运行前从键盘输入。 三、任务发出日期: 2012-11-10 课程设计完成日期: 2012-12-15 小组分工说明小组编号 题 目: 救护车调度模拟系统 小组分工情况:徐海杰主要完成函数main();ready();InitAmbu();start();CreateGraph(MGraph *);Event_ArriveHome();Event_ArriveHos();Event_Call();GetEvent(EVENT *);InsertEvent(EVENT *,EVENT);Ambu_WaitTime();EnQueue(LinkQueue *,CHE);Short_Path(MGraph,int,int,int);薛德利主要完成函数readfile();arrange_ambulances();InitQueue(LinkQueue *);Display_Queue(LinkQueue);Display_All();DeleteEvent(EVENT *);IsEmptyQueue(LinkQueue);Display_Patient_Status(EVENT *,EVENT *);Display_Ambulance_Status(EVENT *);Display_WaitingAmbu();组长签字: 年 月 日指导教师对课程设计的评价成绩: 指导教师签字: 年 月 日 目 录1需求分析说明 52概要设计说明 63详细设计说明 84调试分析 95使用说明 96课程设计总结 127测试结果 138参考书目 14需求分析说明内部排序教学软件的总体功能要求:设计实现一个用事件驱动的“救护车调度”离散模型,模拟120急救中心响应每个病人的呼救信号统一调度救护车运行的情况。我们对问题作适当简化,假设:某城市共有m个可能的呼救点(居民小区、工厂、学校、公司、机关、单位等),分布着n所医院(包含在m个点中),有k辆救护车分派在各医院待命,出现呼救病人时,由急救中心统一指派救护车接送至最近的医院救治。救护车完成一次接送任务后即消毒,并回原处继续待命。假定呼救者与急救中心、急救中心与救护车之间的通讯畅通无阻,也不考虑道路交通堵塞的影响。可以用m个顶点的无向网来表示该城市的各地点和道路。时间可以分钟为单位,路段长可表示为救护车行驶化费的分钟数。1、 模拟每一起病人呼救派车往救接人回院的过程2、 显示每辆救护车的状态(待命、往救、送院可能还有返点)和每个病人的状态(待派车、待接、送院途中),显示各医院的待命救护车队列3、 实时显示当前的病人平均接送时间和平均派车延迟时间以及已送达病人数。4、 救护车应按最快的路线接送病人。5、呼救事件发生的间隔时间和地点都是随机的(其发生频度先给一个省缺值,可实时调整)。6、点数m、点名、路段数e和每段长度以及医院点的名称都由教师以文本文件形式给出,格式为:m n eABCDEFGH (m个点名称,大小写代表不同点)AEGHK (n个医院名称)AB11,AC15,EG9, FK24, (e条路段及长度)救护车总数及分派方案在运行前从键盘输入。以下是各功能模块的功能描述:1 主函数模块救护车调度模拟系统首先调用system(cls)函数进行清屏,然后调用ready()读取文件,创建矩阵等一系列准备,然后调用InitAmbu函数,进行救护车的初始化,再调用start函数实现救护车调度。2 准备函数模块这个模块是软件最为复杂,开发时间最长,修改次数最多的一个模块。先读取文件,然后安排救护车,同时创建矩阵,筛选出呼救地点和医院地点,然后计算医院距离呼救地点距离;最后按距离排序,找出最短路径。3 初始化函数模块实现救护车的初始化,矩阵初始化,队列初始化与事件等一系列函数的初始化4 调度函数模块初始化随机函数种子,令其随机产生病人,模拟呼救事件发生的间隔时间和地点都是随机的。呼救事件函数、往救事件函数、送院事件函数、救护车等待时间函数,并进行输出,输出救护车,医院和病人的状态。测试数据:地点数8 医院数3 路段数10地点名称ABCDEFGH医院名称AEG路段名称AB6,AC7,AG5,AH10,AE8,AD9,BG4,GH9,EH3,EF7概要设计说明main();/主函数ready();/事件发生之前读取文件,安排救护车等准备工作的函数InitAmbu();/救护车初始化函数start();/事件发生,插入事件队列等readfile();/读取文件函数arrange_ambulances();/分配救护车函数CreateGraph(MGraph *);/创建矩阵函数Short_Path(MGraph,int,int,int);/最短路径函数InitQueue(LinkQueue *);/队列初始化函数EnQueue(LinkQueue *,CHE);/进队函数Display_Queue(LinkQueue);/输出队列函数InsertEvent(EVENT *,EVENT);/插入事件队列GetEvent(EVENT *);/获取事件Event_Call();/呼救事件函数Event_ArriveHome();/往救事件函数Event_ArriveHos();/送院事件函数Ambu_WaitTime();/救护车等待时间函数Display_All();/综合输出函数DeleteEvent(EVENT *);/删除事件IsEmptyQueue(LinkQueue);/判断队列是否为空Display_Patient_Status(EVENT *,EVENT *);/输出病人状态Display_Ambulance_Status(EVENT *);/输出救护车状态Display_WaitingAmbu();/输出待命救护车详细设计说明1主函数模块救护车调度模拟系统首先调用system(cls)函数进行清屏,然后调用ready()读取文件,创建矩阵等一系列准备,然后调用InitAmbu函数,进行救护车的初始化,再调用start函数实现救护车调度。2准备函数模块这个模块是软件最为复杂,开发时间最长,修改次数最多的一个模块。先读取文件,然后安排救护车,同时创建矩阵,筛选出呼救地点和医院地点,然后计算医院距离呼救地点距离;最后按距离排序,找出最短路径。读取测试数据,并输出给定的地点,给定的医院数,给定的路段,如有超出测试数据范围的数,则是无效输入。3初始化模块创建一个救护车队列,并进行救护车队列的初始化,并实现实现初始化,队列初始化与事件等一系列函数的初始化4. 调度函数模块初始化随机函数种子,令其随机产生病人,模拟呼救事件发生的间隔时间和地点都是随机的。呼救事件函数、往救事件函数、送院事件函数、救护车等待时间函数。5. 输出模块按照要求输出病人状态、输出救护车状态、输出待命救护车、平均处理、平均延迟和平均等待调试分析我遇到的问题:l 怎样求最短路径l 怎样随机产生呼救病人l 将呼救事件插入事件队列使用说明开始运行,输入程序运行的时间。然后屏幕会输出文件中给出的数据,并要求键盘输入安排救护车。从文件中读出给定8个地点,其中A,E,G为医院,其余为可能发生病人呼救事件的地点。并且得到10条路段。现假设共12辆救护车,三所医院分别为3,4,5辆救护车,分配好救护车后按任意键进入综合显示界面,界面显示“已接送病人数”,“平均延迟时间”“平均处理时间”“平均等待时间”“病人的状态”“救护车状态”“待命救护车”和ESC退出键。程序结束,按任意键退出程序。课程设计总结这次的课程设计让我意识到数据结构存储和算法的具体编写具有十分密切的关系。通过这次数据结构课程设计,使我对哈希表的设计有了一个比较深刻的了解,对各种内部关键字处理方法的性能有了清晰的认识,使我感觉到到,一个优秀的程序,不仅仅是可以运行的,更应该具有人性化的界面,协调的布局,合理的结构,良好的性能和一定的容
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校文艺部笔试题目及答案
- 时间到认识课件
- 时尚表演基础知识培训内容课件
- 人教版四年级上册第五单元5.1《平行与垂直》课时练(含答案)
- 高一英语必修一Unit 2 Travelling around课时同步练习(Listening and Talking)(含答案)
- 项目成本控制方案编制与实施框架
- 小青蛙呱呱系列童话呱呱撒谎了750字7篇范文
- 营销活动效果评估报告模板业绩评估标准版
- 纪念九八一事变的课件
- 纪委监委应急知识培训课件
- 血液肿瘤基础知识
- 阳台封闭施工组织方案
- 北京地铁桥隧结构运维监测技术应用
- 充电桩工程施工方案方案
- 实验室生物安全管理手册
- 生产车间7s管理成果汇报
- 新教师德育工作培训
- 代建管理制度
- 中蜂饲养管理与常见病防治
- 小学数学作业设计培训
- 2024年05月辽宁中国工商银行辽宁分行校园招考笔试历年参考题库附带答案详解
评论
0/150
提交评论