欢迎来到天天文库
浏览记录
ID:25463266
大小:137.55 KB
页数:17页
时间:2018-11-20
《广东海洋大学公交换乘系统课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、广东海洋大学信息学院课程设计报告设计题目公交换乘系统课程名称数据结构姓名(学号)201411621146联系电话专业名称计算机科学与技术所在班级计科1141指导教师谢仕义教师职称教授起止时间2015年11月20日至2015年12月26日评定成绩17目录一、课程设计主要内容………………………………………P31.1概况…………………………………………………………….P31.2主要内容……………………………..………………….…P41.3开发环境和工具………………………………..…………….P4二、功能和结构
2、设计………………………………………….P4三、流程图和算法设计……………………………………………P4四、源程序代码………………………………………….…..P9五、课程设计总结………………………………………….…..P175.1优点……………………………………………………P175.2缺点……………………………………………………P175.3自我总结……………………………………………P17六、参考资料……………………………………………….…..P1817一、课程设计主要内容1.1概况名称:公交换乘系统用途:交
3、通运输公司、乘客功能:实现最优路线的显示1.2主要内容公交换乘在一个城市的公共交通系统设计中占据着极其重要的地位,公交换乘的过程将直接影响居民出行时间的长短,公交换乘的过程如下:指定一起始公交站点与目的公交站点,依据参考因素,例如:换乘路线的路径最短、耗费时间最短、所需车资最少等,经过分析处理得到可达目的站点换乘次数最少的乘车方案,具体可分为:(1)零次换乘起始站点和目的站点之间存在可直达的公交线路,即出行居民无需转乘就可以直接到达目的站点,这也是较为理想的方案。(2)一次换乘起始站点和目的站点之间没有
4、公交车直接往返,即两站点之间不存在可直达的公交线路,则出行居民需要在途经的某个站点下车,然后转乘另一线路公交车才能达到目的站点。(3)多次换乘在起始站点和目的站点之间没有可直达的公交线路,出行居民需要经过一次以上的转乘才能达到目的站点,则得到多次换乘方案。多次换乘方案可通过一次换乘的递归计算得到,一般情况下,超过两次转乘的方案对于出行居民来说是难以接受的,本课程设计只要求计算零次和一次换乘方案,对于一次以上的公交换乘不作要求。下面以图所示的公交线路图为例,来看一下公交换乘方案的选择。17在该交通公交线路
5、图网中共有1线、2线、3线3条公交线路,每条线路各布有若干个公交站点(与公交线路对应颜色的小圆点标示),其中黑色圆点表示换乘站点,即不同线路共同经过的公交站点。例如,某一居民在湾桥站乘车前往目的站点建新东路站,则该居民可乘坐2线公交车即可直达目的站点,即零次换乘;如果该居民前往目的站点海运集团公司站,分析该公交线路可知该居民有两种一次换乘的乘车方案:其一是该居民在湾桥站乘坐2线公车到农垦医院站,然后再换乘1线公交车直到海运集团公司站;其二是该居民在湾桥站乘坐2线公车直到霞湖医院站,再换乘1线公交车到海运
6、集团公司站;同理,仿照一次换乘的方法可得到其他多次换乘的乘车方案,用户可以自行分析。1.3开发环境和工具开发语言:C++程序设计语言开发软件:VisualC++6.0二、功能和结构设计1)输入出发点:2)输入终点:3)查询结果:三、流程图和算法设计用户通过输入起始站点和终点站来获取公交线路信息,流程图如下:17算法:(1)首先建立3个一位数组保存各个站点信息。具体算法如下:Busline::Busline(stringp[],intn)//构造函数,初始化公交线路站点信息{if(n>pathlen)th
7、row"上溢";for(inti=0;i8、len]={"海滨医院站","海滨宾馆站","儿童公园站","广州湾站","建设路站","湛江汽车南站","人民大道中巴专线","世纪广场站"};Buslinea(path1,7);Buslineb(path2,11);17Buslinec(path3,8);(2)判断乘客是否需要换乘,即起点和终点是否位于同一条公交线上:1)如果可以直达,起点和终点位于同一条公交线上,算法如下:voidBusline::through(inti,strin
8、len]={"海滨医院站","海滨宾馆站","儿童公园站","广州湾站","建设路站","湛江汽车南站","人民大道中巴专线","世纪广场站"};Buslinea(path1,7);Buslineb(path2,11);17Buslinec(path3,8);(2)判断乘客是否需要换乘,即起点和终点是否位于同一条公交线上:1)如果可以直达,起点和终点位于同一条公交线上,算法如下:voidBusline::through(inti,strin
此文档下载收益归作者所有