庐山导游系统_第1页
庐山导游系统_第2页
庐山导游系统_第3页
庐山导游系统_第4页
庐山导游系统_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 jiu jiang university 毕毕 业业 论论 文文 (设设 计计) 题题 目目 庐山导游系统庐山导游系统 英文题目英文题目 lushanlushan mountainmountain guidingguiding systemsystem 院院 系系 商学院商学院 专专 业业 物流管理物流管理 姓姓 名名 年年 级级 20122012 级级 指导教师指导教师 二零一二年十二月 摘摘 要要 随着人们物质水平日益提高,越来越多的人走出了家门,投入到了旅 游大军中,国内外旅游业取得了蓬勃发展。为了提高竞争力,在旅游市场 夺得更大份额,各旅游点在进行旅游资源开发,加强管理的同时,都在考

2、 虑如何用现代的技术更好地为游客提供人性化的服务,各种导游系统也应 运而生。 经过对旅游业形势和庐山现状的分析,导游系统对庐山的地图进行 抽象分析,将景点分布情况以邻接矩阵形式存储在计算机中。系统主要由 系统登录,景点查询,路径查询三个模块组成。景点查询可为游客提供景 点信息查询服务;路径查询是电子向导,可为游客提供如何从甲地到乙地 的路径查询服务。根据用户的特殊性,设计了简洁友好的使用界面,设计 并实现了关键算法:最短路径查询。 关键词关键词 :系统分析,路径查询,导游系统 abstractabstract with the living level rising, more and mor

3、e people go out of their home, take part in the travelers. the domestic and abroad tourism have been developed rapidly. in order to raise the competence of competition, and get more proportions in the tourism market, the tourism departments are expanding the tourism resources and strengthening manag

4、ement, meantime, they are all considering how to use modern technology to provide better humanizing service. lu shan mountain guiding system consists of system loading module, spots searching module, path searching module. spots searching module could provide the service of searching spots informati

5、on; path searching module is electronic wizard, providing the path searching service on how to get to on place from another place. according to the particularity of different users, the system has brief and friend using interface, designating and realizing the critical algorithm: the shortest path s

6、earching. keywordskeywords :lushan mountain guiding system , system analysis , path search 目目 录录 摘要 abstract 第一章 概 述1 1.1 背景分析1 1.2 国内外现状2 1.3 论文组织3 第二章 系统需求4 2.1 业务需求4 2.2 性能需求4 2.3 系统平台需求.4 2.4 数据流图.5 2.5 数据分析.6 2.6 数据字典.7 第三章 系统设计9 3.1 程序流程图9 3.2 系统流程图9 3.3 系统结构图11 3.4 景点分布图.12 3.5 景点结构关系图的存储12 3

7、.6 重要算法描述13 第四章 系统实现16 4.1 启动界面的实现16 4.2 主界面窗体实现16 4.3 系统程序编码18 第五章 系统测试及维护27 5.1 系统测试27 5.2 系统维护30 第六章 总 结32 参考文献34 致 谢35 第一章第一章 概概 述述 随着社会的发展,旅游业已成为全球经济中发展势头最强劲和规模最大的产业之 一。旅游业在城市经济发展中的产业地位、经济作用逐步增强,旅游业对城市经济的 拉动性、社会就业的带动力、以及对文化与环境的促进作用日益显现。 这个世界正处于这样的时代-遍及全球的平民百姓的大众旅游黄金时代已经到来。 各国为了发展旅游业,对改善和优化各自的旅游

8、环境,都在作出很大的努力。凡是能 为人们提供娱乐、休憩、游玩的地方,大多人满为患,拥挤不堪。所以要发展我国的 旅游业,完善与旅游相关联的各项配套的软、硬件设施是至关重要的。 1.11.1 背景分析背景分析 美丽的庐山1,是世界级名山。地处江西省北部,风景区总面积 302 平方公里, 山体面积 282 平方公里,最高峰汉阳峰海拔 1474 米,东偎鄱阳湖,南靠南昌滕王阁, 西邻京九大通脉,北枕滔滔长江。中华民族源远流长的历史和数千年博大精深的文化 蕴育了庐山无比丰厚的内涵,使她不仅风光秀丽,更集教育名山、文化名山、宗教名 山、政治名山于一身。 庐山的历史遗迹,代表了中国历史发展的大趋势,处处闪烁

9、着中华民族历史文化 的光华,充分展示了庐山极高的历史、文化、科学和美学价值。她是千古名山,得全 国人民厚爱及世界的肯定,获一系列殊荣:首批国家重点风景区、全国风景名胜区先 进单位、中国首批 4a 级旅游区、全国文明风景区、全国卫生山、全国安全山、中华 十大名山之一、世界遗产地-我国目前唯一的世界文化景观,我国首批世界地质公园。 庐山的历史遗迹以其独特的方式,融汇在具有突出价值的自然美之中,形成了具有极 高美学价值的、与中华民族精神和文化生活紧密相联的文化景观。庐山的每一滴水、 每一棵树、每一幢房,如一首诗、一幅画、一本书。庐山,是中华民族的骄傲! 1任务提出 开发者:九江学院信息科学与技术学院

10、 用户类型:游客、系统管理员 用户特点:客户端操作人员只具备基本软件操作能力,要求软件简单、易操作、 具有极强的异常处理能力;系统管理员要求具备数据库操作维护能力及熟悉对景区各 景点的分布情况。 2系统目标 系统目标是总体设计的根据,是系统具体实现的前提,本系统将达到以下目标: (1) 便于景区管理,节省资源。 (2) 为游客提供导游服务,游客可通过本系统查看各个景点介绍等信息。 (3) 可为游客提供查询服务,可查询景点之间的路线。 1.21.2 国内外现状国内外现状 随着国际和平环境的来临、世界经济的日益繁荣和国际交往的不断扩大,作为第 三产业的国际旅游业迅猛发展。旅游业2-3是投入少、效益

11、好、创汇多、可带动一些关 联产业的发展和增加就业,并促进国际经济交往的产业。旅游业为国家财政积累和创 外汇均起了重要作用。我国虽然自然资源十分丰富,但因对旅游业缺乏投资,设施落 后,又因长期受国家高度保护,缺乏市场竞争机制,以致我国旅游业远落后于发达国 家。 我国旅游业在世界旅游行列中的排位,按旅游收入计,1978 年居世界第 41 位,经 过十多年的努力,至 80 年代后期,跃升至第 25 位左右。但在同一时期内,与部分亚 洲国家(地区)相比,韩国排位由第 38 位上升至第 13 位,泰国由第 24 位上升至第 14 位。上述情况,一方面说明我国的旅游业近年来有一定的发展,另一方面也说明发

12、展速度不快,地位仍较滞后。与我国拥有丰富的旅游资源很不相称。 国际旅游业是一个国家对外交流的一个重要窗口,也即是作为国家内外两种经济 体系的重要交接口。对每个国家的经济发展起着重要的作用。各国为了发展旅游业, 对改善和优化各自的旅游环境,都在作出很大的努力。我国旅游设施和基础设施落后, 国家投资少,旅游设施不配套,服务质量差是我国旅游业发展缓慢的主要原因。因此 积极引进外资和先进技术设备,以完善与旅游服务相关联的各项配套设施。为吸引游 客发展旅游业,努力使凡与旅游服务相关联的行业,包括宾馆饭店、景点设施、娱乐、 交通、购物等配套设施都做到尽善尽美和富有特色。导游系统在国外的多数景区都已 经配备

13、,而在国内还没有几个。导游系统无论是对游客还是景区,都是非常重要的。 如果没有良好的旅游及相关服务设施和完善的软、硬环境,是难以大量吸引客源的。 1.31.3 论文组织论文组织 本论文重点介绍了庐山导游系统的实现过程:包括系统分析、 数据流程分析、 功能设计、系统设计、 系统实现、 系统测试和调试。也给出了重要功能的代码实现。 全文共分六章。 1第一章概述,介绍了背景分析和我国当前旅游业的国内外形势。提出开发导 游系统的必要性。 2第二章系统需求分析,从业务需求、系统功能、平台、数据 4 部分对系统进行 了分析。 3第三章是系统设计,软件主要从两个方面入手:景点查询和最短路径查询。 得出了系统

14、流程图、设计了图的存储,设计了主要算法。 4第四章介绍了导游系统的实现过程和部分主要功能代码。 5第五章为系统的测试及维护,介绍了一些系统的测试方法和测试结果,以及 软件的维护。 6最后一章是总结,对本论文所做工作进行了总结。 第第二二章章 系系统统需需求求 2.12.1 业务需求业务需求 1.使用范围要求 该系统是根据庐山景区的特点制作的导游系统,在各景点或公共场所设置。可为 游客提供方便。不过该系统可以很容易改造为其他景区、学校、一些大公司的导游系 统,为参观提供方便。 2. 功能要求 该系统主要有以下功能: (1)建立庐山景区的平面图。 (2)为来访客人提供图中任意景点相关信息的查询。

15、(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一 条最短的简单路径。 2.22.2 性能需求性能需求 虽然系统的数据量不是很大,但是也要保证数据的长期完整性和安全性。系统操 作简单易行,查询灵活方便。通过系统的实施,可为游客提供优质服务,起到宣传效 果。 2.32.3 系统平台需求系统平台需求 1. 系统开发平台 操作系统:windows 系列 开发工具:visual c+ 6.0 2. 开发环境介绍 visual c+4-7是 microsoft c/c+ 7.0 之后推出的新一代程序开发工具,它不仅继 承 c+的特性,同时具备可视化程序语言(visual progra

16、mming language)及程序产生器 的概念。既然是面向对象语言,当然会提供系统基础类给程序员再使用(reuse)。在 visual c+ 中,延袭 microsoft c/c+7.0 的作法,将原有的 sdk 函数重新封装在适当 的类中,构造了“基础类函数库(microsoft foundation class library,简称 mfc)” ,它提 供了许多现成的框架对象,可供在使用 visual c+设计应用程序是使用。此外,还提 供“classwizard”与“appwizard”可帮助构造基本的程序框架,从软件再使用的技术 观点而言,已由 sdk 函数库方式经过面向对象程序设

17、计方式进展到自动产生模板相 关类程序代码方式(framework)。 面向对象的程序设计是一种新型的程序设计方法,计算机环境本身就是一个对象 的集合体,对象彼此之间通过消息相互作用,面向对象的程序设计提高了程序的模块 化和可维护性。面向对象的程序设计有几个特点及优点。首先,由于对象包含属性和 方法,因此支持模块化程序设计,而模块化程序设计支持开发的便利性及代码的可维 护性。 visual c+ 6.0 是 microsoft 公司推出的功能最强大、最复杂的语言产品之一,它 是目前为止在 windows 环境下进行大型软件开发的首选。其具有如下特点: (1)visual c+ + 的语法符合 a

18、nsl c+ + 标准,并在此基础上针对 windows 操作系 统增加了一些语句; (2)集成了 mfc(microsoft foundation class)类库,mfc 封装了 windows api 函数和 消息,使程序员可以使用 mfc 高效率地开发各种应用程序; (3)提供了 mfc appwizard,可方便地生成程序框架; (4)提供了基于 mfc 的 classwizard,通过它可以轻松地完成对各种 mfc 类的使用 与维护。 visual c+ 6.0 作为 visual studio 家族中的一员,是 microsoft 公司以 c+语言为基 础开发的可视化集成开发工具

19、,与其他编程语言 visual basic 6.0、visual forpro 等一起, 成为广大程序员喜爱的开发平台。 2.42.4 数据流图数据流图 由游客选择输入景点名称,通过景点查询系统,进行处理,最终输出用户所需相 关景点信息,或者是用户选择输入信息,通过路径查询处理系统进行处理,最终输出 用户所需的有关两景点间最便捷路径信息。如图 2-1 所示。 图 2-1 游客查询数据流图 系统管理员根据权限成功登录,根据需要对数据进行添加和修改。成功修改后, 可对数据保存。管理员模块数据流图如图 2-2 所示。 用 户 景 点 查 询 路 径 查 询 信息传 输 信息传 输 信息文件 查询结果

20、 查询结果 选择信息 选择信息 图图 2-22-2 图 2-2 管理员模块数据流图 2.52.5 数据分析数据分析 数据项描述数据项描述 数据项编号:01 数据项名称:景点名称 简述:景点的主要标志 类型:字符型 长度:30 位 取值/定义:庐山景区现有实体名称 数据项编号:02 数据项名称:景点介绍 简述:景点的相关描述 类型:字符型 长度:100 位 取值/定义:该建筑的作用及内部设施 数据项编号:03 管理员登录 验 证 信息文件 写信息数 据 更改数据 数据项名称:景点图片 简述:有关景点的实体照 类型:图片类型 数据项编号:04 数据项名称:两景点间长度 简述:有直接通路的两景点间的

21、路径长度 类型:整型 2.62.6 数据字典数据字典 原始数据的描述:原始数据的描述: 数据名称:庐山导游系统 简述:系统中保存庐山各景点的相关信息,即景点名称、景点介绍、图片、两景点间 的长度。 来源:庐山的现有景点及相关信息。 去处:来访者 组成:存储信息用库有景点个数,两景点及之间的长度,景点介绍及图片。 数据表:数据表: 信息文件=景点名称+景点介绍+景点图片+两景点间长度 数据表如表 2-1 所示,表由景点编号、景点名称、景点介绍、景点图片四个部分 组成。景点编号由 0-9 十个数字组成与景点名称一一对应,景点介绍主要介绍了个景 点的基本设施及用途。 表表 2-12-1 数据信息表数

22、据信息表 景点编号景点名称景点介绍景点图片 0如琴湖此湖,建于 1961 年,面积约 110000 平方米,蓄水量约 1000000 立方 米。因湖面形如小提琴,故名。 bitmap1 1乌龙潭乌龙潭位于东谷山冲底部头,两山 夹峙,中为一线幽涧,树木交翠,绿荫 掩映,恬静凉爽。 bitmap2 2含鄱口含鄱口海拔 1286 米,含鄱岭和对 面的汉阳峰之间形成一个巨大壑口,大 有一口汲尽山麓的鄱阳湖水之势,故得 名 bitmap3 3仙人洞仙人洞为庐山著名景点之一。位于 锦绣谷的南端,有参差如手的“佛手岩” 。 bitmap4 4三叠泉三叠泉位于五老峰下部,飞瀑流经 的峭壁有三级,溪水分三叠泉飞

23、泻而下, 落差共 155 米,极为壮观,撼人魂魄。 bitmap5 5五老峰五老峰地处庐山东南,因山的绝顶 被垭口所断,分成并列的五个山峰,仰 望俨若席地而坐的五位老翁. bitmap6 6植物园从含鄱口沿石阶而下走数百米即抵 植物园大门。是我国著名的亚热带高山 植物园. bitmap7 7东林寺东林寺,座落于庐山西麓,是净士 宗发源地。东林寺为晋代东方名僧慧远 于东晋太元九年(公元 384 年)创建 bitmap8 8大口瀑布大口瀑布是庐山管理局近年开发出 来的景点,游客可乘索道直接到大口瀑 布. bitmap9 9小天池小天池位于庐山牯岭北面,池中之 水置于高山而终年不溢不涸。池后山脊 上

24、,屹立着一座白塔似的喇嘛塔。 bitmap10 第三章第三章 系统设计系统设计 经过分析,对庐山导游流程进行整理,得出其使用过程如下: 进入系统之后,来访者将根据景点名称栏的下拉菜单中所提供的景点名称选择所要 访问的景点,单击查询将会出现与此景点相关信息的对话框。 来访者将根据起点栏和终点栏的下拉菜单中所提供的景点名称分别选择景点,表示 所要查找的最短路径的两景点。单击查询,将会获得两景点间的最短路径长度及所要经 过的其他景点的名称和顺序。 3.13.1 程序流程图程序流程图 程序流程图如图 3-1 所示。首先登录系统,如果是管理员的话要进行身份验证, 验证成功后进入管理员模块。管理员可以对系

25、统内部数据进行修改、添加,并且可以 控制整个系统的运行状态决定是否推出本系统。如果你是一般用户,则不需要进行身 份验证,直接进入一般用户模块。选择输入,通过系统查询,你将得到你所需要查询 的相关信息。一般用户只能进行查询,不能对数据进行添加、删除、修改。 3.23.2 系统流程图系统流程图 在对上述流程进行分析后,现在对新的导游流程进行整理,其查询过程如下:进入系 统之后,来访者将根据景点名称栏的下拉菜单中所提供的景点名称选择所要访问的景点, 单击查询将会出现与此景点相关信息的对话框.参观者将根据起点栏和终点栏的下拉菜 单中所提供的景点名称分别选择景点,表示所要查找的最短路径的两景点,单击查询

26、,将 会获得两景点间的最短路径长度及所要经过的其他景点的名称和顺序。 图 3-1 程序流程图 景点介绍流程如图 3-2 所示。 检索信息 景点介绍 选择景点 景点集合 输出信息 图 3-2 景点介绍流程图 查询信息 登录 输出结果输出结果 查询路径 结束 景点查询路径查询 选择输入选择输入 退出 验证 no yes 成功退出 no yes yes no 路径查询流程如图 3-3 所示。 3.33.3 系统结构图系统结构图 根据功能描述8-9,庐山导游系统可分为 2 个主要功能模块,用户模块和管理员模 块。庐山导游系统结构图如图 3-4 所示。管理员模块的主要功能是对实际情况有所改 变的数据进行

27、修改,并保证其及时性和准确性。用户查询模块的主要功能是对游客输入 的景点查询,提供相应的景点信息,并能为游客提供路径查询服务,即游客可以输入目 前的地址,再输入目的地的地址,系统能提示如何到达的路径,并给出距离。 选择起点 选择终点 景点集合 查找并计算长度及路径 图 3-3 最短路径查询流程图 庐山导游系统庐山导游系统 景点路径查询景点路径查询 长度和路径长度和路径 景点介绍查询景点介绍查询 景景 点点 名名 称称 景景 点点 介介 绍绍 景景 点点 图图 片片 用户界面用户界面管理员界面管理员界面 修改数据修改数据 图 3-4 系统结构图 3.43.4 景点分布图景点分布图 分析庐山景点分

28、布情况,并进行抽象,得出各景点分布10-11如图3-5所示。其中方 框代表景点,景点编号与表2-1相对应。边代表两景点间的路径,边上的数字代表长度, 单位为m。 7 9 0 3 1 6 2 4 5 8 1100 1000 800 1100 1500 1200 1100 500 450 500 图 3-5 景点分布图 3.53.5 景点结构关系图的存储景点结构关系图的存储 图的存储方法12-14有很多,常见的存储表示法有: 1.邻接矩阵表示法 2.邻接表 3.邻接多重表 4.十字链表 邻接矩阵表示法:可以很容易的判定任意两点之间是否有边相连,并容易求得各个 顶点的度。在邻接表上容易找到任一顶点的

29、第一个邻接点和下一个邻接点,但要判定 任意两点之间是否有边或弧相连,则需要搜索第 i 个或第 j 个链表。因此,不及邻接矩 阵方便。对无向图而言,邻接多重表和邻接表的差别,仅仅在于同一条边在邻接表中 用两个结点表示,而在邻接多重表中只有一个结点。所以,除了在边结点中增加一个 标志域外,邻接多重表所需的存储量和邻接表相同。十字链表是有向图的一种链式存 储结构,只使用于有向图。 邻接矩阵表示法存储数据,具有如下特点: 1.存储空间:对无向图而言,它的邻接矩阵是对称矩阵,因此采用特殊的压缩 存储法,即只存储其下三角。这样,一个具有 n 个顶点的无向图,它的邻接矩阵需要 n(n-1)/2 个存储空间即

30、可。但是用下三角存储虽然节省存储空间,但是计算不是很方 便。所以在本系统中不采用压缩存储法。 2.便于运算:采用邻接矩阵表示法,便于判定图中任意两个顶点之间是否有边 相连,还便于求得各个顶点的度。 经过以上分析,决定采用邻接矩阵存储庐山景点分布图。 庐山景点分布图利用邻接矩阵表示法如下: 0 1 2 3 4 5 6 7 8 9 0 0 800 1100 1000 1 0 1100 2 0 1100 500 450 3 800 1100 1100 0 1200 1800 4 500 0 500 5 450 500 0 6 1200 0 7 1100 0 8 1800 0 9 1000 0 3.6

31、3.6 重要算法描述重要算法描述 在上述的路径带权无向图中,顶点代表地点,边代表景点间的路线,边权表示路 线的长度。在本系统中最重要的功能就是实现最短路径的查询。在两点中求最短路径 算法中迪杰斯特拉算法15-16比较好。 迪杰斯特拉算法算法的基本思想是:按路径长度递增的顺序,逐个产生各最短路 径。 设有带权的无向图 d=(v,e),d 中的边权为 w(e)。辅助向量 dist 的每一个分量 disti表示已经找到的且从开始点 v0 到每一个终点 vi 的当前最短路径的长度。它的初 态为:如果从 v0 到 vi 有弧,则 disti为弧的权值;否则 disti为。其中,长度为 disti=min

32、disti|viv的路径是从 v0 出发的长度最短的一条最短路径,此路径为 (v0,vj) 。 s为已求得最短路径的终点集合(开始为v0) 。 v-s为尚未求出最短路径的顶点集合(开始为 v-v0的全部结点) 。 迪杰斯特拉算法的主要步骤如下: 1. g 为用邻接矩阵表示的带权图。 sv0,disti=g.arcsv0i.adj; 将 v0 到其余顶点的路径长度初始化为权值; 2. 选择 vk,使得 distvk=min(disti|viv-s) vk 为目前求得的下一条从 v0 出发的最短路径的终点。 3. 修改从 v0 出发到集合 v-s 上任一顶点 vi 的最短路径的长度。如果 dist

33、k +g.arcski.adjdisti,则将 disti修改为 distk+g.arcski.adj 4. 重复第 2,3 步 n-1 次,即可按最短路径长度的递增顺序,逐个求出 v0 到图中 其他每个顶点的最短路径。 迪杰斯特拉算法流程图如图3-6所示: 图图 3-63-6 迪杰斯特拉算法流程图迪杰斯特拉算法流程图 第四章第四章 系统实现系统实现 系统经过分析并加以设计,就可以着手进行实现了,本系统主要分为界面实现和 代码实现。 4.14.1 启动界面的实现启动界面的实现 本系统首先印入眼帘的是庐山的平面图。本系统的启动界面窗口如图 4-1 所示。 图 4-1 系统启动界面 此窗体的设计整

34、体为一个对话框模板 id 为 idd_startup。其背景图为庐山景 区的平面图,为 bitmap 类型 id 为 idb_map。在它的右下角有一个标题为进入系统 的图标按钮控件 id 为 idok,单击此图标,用户可以正式进入系统主界面。 4.24.2 主界面窗体实现主界面窗体实现 主窗体是用户进行操作的主要界面,简单明了是最重要的,每个图标要完成的功 能在界面中都有文字提示,用户要完成什么功能只要点击就行了。其名称为庐山导游 系统。如图 4-2 所示。 图 4-2 系统主界面 此窗体一共分为两块景点查询及问路查询。在景点查询模块中外围用一个标题为 景点查询的 id 为 idc_stat

35、ic 的 group box 类型控件所包围,内有名为选择景点的 静态文本,傍边是一个 id 为 idc_sightname 的 combo box 类型控件,点击其下 拉图标将出现所有景点的名称。右边是一个标题为显示景点信息 id 为 idc_showsightinfo 的 push button 类型控件。用户在选择了一个景点后,再单 击按钮将出现窗体信息,如图 4-3 所示。以景点如琴湖为例。 图 4-3 景点介绍窗体 此窗体由两个标题为景点名称、景点信息的静态文本,两个 id 分别为 idc_name、idc_info 的 edit 类型控件,一个 id 为 idc_picture 的

36、 bitmap 类型控 件所构成。控件 idc_name 显示景点名称,控件 idc_info 显示景点信息,控件 idc_picture 显示景点图片。各随输入景点的不同而改变。 问路查询模块的外围同样是由一个标题为问路查询 id 为 idc_static 的 group box 类型控件所包围,内有两个标题分别为起点、终点的静态文本,两个 id 都为 idc_combobegin 的 combo box 类型控件,点击它们下拉图标将出现所有景点的 名称。一个标题为查询的 id 为 idc_query 的 push button 类型控件,一个 id 为 idc_showout 的 edit

37、 类型控件。在选择了起点与终点景点名称后单击查询,edit 中将出现总长度及路线,以乌龙潭到五老峰为例,如图 4-4 所示。 图 4-4 最短路径实现图 在主窗体的最下方还有一个标题为结束查询的 id 为 idc_button2 的 push button 类型控件,单击此控件系统将自动退出。 4.34.3 系统程序编码系统程序编码 1最短路径查询 void cnewguidedlg:tdijkstra(int u, int *d, int *path) for(int v=0;vu;v+) dijkstra(v, dv, pathv); void cnewguidedlg:dijkstra(

38、int v, int d, int path) bool *s=new booln; if(vn-1) /cerrbadinputendl; return; for(int i=0;in;i+) si=false; di=avi; if(i!=v else pathi=-1; sv=true;dv=0; for(i=0;in-1;i+) int u=choose(d,n,s,noedge); su=true; for(int w=0;wn;w+) if(!sw pathw=u; void cnewguidedlg:tdijkstra(int u, int *d, int *path) for(

39、int v=0;vu;v+) dijkstra(v, dv, pathv); cnewguidedlg:cnewguidedlg() for(int i=0;i; strcat(result,总长度为:); itoa(dbeginend,a,10); strcat(result,a); strcat(result,rn); strcat(result,路线为:); stacktop=end; while(end=0) if(pathbeginend=0)stack+top=pathbeginend; end=pathbeginend; while(top0) strcat(result,nam

40、estacktop); strcat(result,flag); top-; strcat(result,namestacktop); m_showout=_t(result); updatedata(false); 4显示景点图片函数代码如下: bool sightinfo:showpic(int num) int num1=num+1; /得到文件名,文件名格式为 bitmap(i).bmp char pic12=bitmap; char last1; itoa(num1,last,10); strcat(pic,last); strcat(pic,.bmp); hbitmap hbmp=

41、(hbitmap)loadimage(null,_t(pic),image_bitmap,0,0,lr_createdibse ction|lr_defaultsize|lr_loadfromfile); cstatic* p_bitmap=(cstatic*)getdlgitem(idc_picture);/picture id 类型选 bitmap p_bitmap-setbitmap(hbmp); /(cstatic*)getdlgitem(idc_picture)-setbitmap(hbitmap(bitmapnum); return true; 5初始化主对话框的代码如下: boo

42、l cnewguidedlg:oninitdialog() /pdlg=new cstartupdlg; /pdlg-create(idd_startup);/idd_id 为你的对话框的 id /pdlg-showwindow(sw_restore);/显示 cdialog:oninitdialog(); / add about. menu item to system menu. / idm_aboutbox must be in the system command range. assert(idm_aboutbox assert(idm_aboutbox appendmenu(mf_

43、separator); psysmenu-appendmenu(mf_string, idm_aboutbox, straboutmenu); seticon(m_hicon, true);/ set big icon seticon(m_hicon, false);/ set small icon cgpushdialogfromcenter(*this); /动态爆炸式推出窗口! ifstream inf(sight.txt); if(!inf) messagebox(wrong input); return false; int sightnum;/景点数 int road,from,t

44、o,w;/边数,两顶点以及两点间的距离 infsightnumroad; if(sightnum5) messagebox(too little numbers of sights!); exit(0); reset(sightnum,noedge); d=new int *sightnum,path=new int *sightnum; for(int j=0;jsightnum;j+) dj=new intsightnum; pathj=new intsightnum; for(int i=0;ifromtow; add(from,to,w); for( j=0;jtnametinfo;

45、strcpy(namej,tname); strcpy(infoj,tinfo); for(i=0;isightnum;i+) m_sightname.addstring(namei); for(i=0;isightnum;i+) m_cbegin.addstring(namei); for(i=0;isightnum;i+) m_cend.addstring(namei); tdijkstra(sightnum,d,path); return true; / return true unless you set the focus to a control void cnewguidedlg

46、:reset(int vertices, int noedge) n=vertices; noedge=noedge; a=new int *n; for(int i=0;in;i+) ai=new int n; aii=0; for(int j=0;jn;j+) if(i!=j)aij=noedge; bool cnewguidedlg:add(int u, int v, const int auv=w; avu=w; e+; return true; 第五章第五章 系统测试及维护系统测试及维护 5.15.1 系统测试系统测试 1系统测试概述 系统测试是软件的一个重要的组成部分。软件测试在软

47、件生命周期里横跨两个 阶段。通常在编写出每个模块之后就对它做必要的测试。软件测试的目的与其它阶 段的目的相反。软件测试的目的是发现错误。一般说来,测试不是由编写程序本人 进行,它由专门的人员对它进行测试。软件一般有两种方法:黑盒测试和白盒测试。 黑盒测试把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程。白盒测 试是把程序看成一个透明的盒子里,也就是完全了解程序的结果和处理过程。软件 测试过程一般分成以下几个步骤: 模块测试:保证每个模块作为一个单元能正确运行,所以模块测试通常 称为单元测试。在这个测试步骤中所发现的往往是编码和详细设计的错误。 子系统测试:把经过单元测试的模块放在一起形

48、成一个子系统来测试。模块相 互间的协调和通信是这个测试过程中的主要问题,因此这个步骤着重测试模块的接 口。 系统测试:把经过测试的子系统装配成一个完整的系统来测试。 验收测试:把软件系统作为单一的实体进行测试,要用户参与。目的是验证系 统确实能够满足用户的需要,在这个测试步骤中发现的往往是系统需求说明书中的 错误。 平行测试:同时运行新开发出来的系统和将被它取代的旧系统,以便比较新旧 两个系统的处理结果。 本系统使用黑盒子法进行测试。下面就输入一些信息,看能不能输出相应正确的 结果。 2系统测试 (1)景点查询部分,在选择景点栏中 输入:输入:如琴湖 点击 景点信息查询 输出:输出: 景点名称

49、:如琴湖 景点信息:此湖,建于 1961 年,面积约 110000 平方米, 蓄水量约 1000000 立方米。因湖面形如小提琴,故名。图片:bitmap1 输入:输入:乌龙潭 点击 景点信息查询 输出:输出:景点名称:乌龙潭 景点信息:乌龙潭位于东谷山冲底部头,两山夹峙,中 为一线幽涧,树木交翠,绿荫掩映,恬静凉爽。 图片:bitmap2 输入:输入:含鄱口 点击 景点信息查询 输出:输出:景点名称:含鄱口 景点信息:含鄱口海拔 1286 米,含鄱岭和对面的汉阳峰 之间形成一个巨大壑口,大有一口汲尽山麓的鄱阳湖水之势,故得名。 图片: bitmap3 输入:输入:仙人洞 点击 景点信息查询

50、输出:输出:景点名称:仙人洞 景点信息:仙人洞为庐山著名景点之一。位于锦绣谷的 南端,有参差如手的“佛手岩” 。 图片:bitmap4 输入:输入:三叠泉 点击 景点信息查询 输出:输出:景点名称:三叠泉 景点信息:三叠泉位于五老峰下部,飞瀑流经的峭壁有 三级,溪水分三叠泉飞泻而下,落差共 155 米,极为壮观,撼人魂魄。 图片: bitmap5 输入:输入:五老峰 点击 景点信息查询 输出:输出:景点名称:五老峰 景点信息:五老峰地处庐山东南,因山的绝顶被垭口所断, 分成并列的五个山峰,仰望俨若席地而坐的五位老翁。 图片:bitmap6 输入:输入:植物园 点击 景点信息查询 输出:输出:景

51、点名称:植物园 景点信息:从含鄱口沿石阶而下走数百米即抵植物园大 门。是我国著名的亚热带高山植物园。 图片:bitmap7 输入:输入:东林寺 点击 景点信息查询 输出:输出:景点名称:东林寺 景点信息:东林寺,座落于庐山西麓,是净士宗发源地。 东林寺为晋代东方名僧慧远于东晋太元九年(公元 384 年)创建。 图片: bitmap8 输入:输入:大口瀑布 点击 景点信息查询 输出:输出:景点名称:大口瀑布 景点信息:大口瀑布是庐山管理局近年开发出来的景 点,游客可乘索道直接到大口瀑布。 图片:bitmap9 输入:输入:小天池 点击 景点信息查询 输出:输出:景点名称:小天池 景点信息:小天池

52、位于庐山牯岭北面,池中之水置于高 山而终年不溢不涸。池后山脊上,屹立着一座白塔似的喇嘛塔。 图片: bitmap10 (2)路径查询部分 输入:输入:起点:如琴湖 终点 :乌龙潭 点击 查询 输出:输出:总长度为:1900 m 路线为:如琴湖-仙人洞-乌龙潭 输入:输入:起点:如琴湖 终点 :五老峰 点击 查询 输出:输出:总长度为:2350 m 路线为:如琴湖-仙人洞-含鄱口-五老峰 输入:输入:起点:乌龙潭 终点 :含鄱口 点击 查询 输出:输出:总长度为:2200 m 路线为:乌龙潭-仙人洞-含鄱口 输入:输入:起点:乌龙潭 终点:小天池 点击 查询 输出:输出:总长度为:2900 m

53、路线为:乌龙潭-仙人洞-如琴湖-小天池 输入:输入:起点:含鄱口 终点 :五老峰 点击 查询 输出:输出:总长度为:450 m 路线为:含鄱口-五老峰 输入:输入:起点:含鄱口 终点 :小天池 点击 查询 输出:输出:总长度为:2900 m 路线为:含鄱口-仙人洞-如琴湖-小天池 输入:输入:起点:仙人洞 终点 :五老峰 点击 查询 输出:输出:总长度为:1550 m 路线为:仙人洞-含鄱口-五老峰 输入:输入:起点:仙人洞 终点 :东林寺 点击 查询 输出:输出:总长度为:1900 m 路线为:仙人洞-如琴湖-东林寺 输入:输入:起点:三叠泉 终点 :乌龙潭 点击 查询 输出:输出:总长度为

54、:2700 m 路线为:三叠泉-含鄱口-仙人洞-乌龙潭 输入:输入:起点:三叠泉 终点 :大口瀑布 点击 查询 输出:输出:总长度为:3100 m 路线为:三叠泉-含鄱口-仙人洞-大口瀑布 输入:输入:起点:五老峰 终点 :如琴湖 点击 查询 输出:输出:总长度为:2350 m 路线为:五老峰-含鄱口-仙人洞-如琴湖 输入:输入:起点:五老峰 终点 :三叠泉 点击 查询 输出:输出:总长度为:500 m 路线为:五老峰-三叠泉 输入:输入:起点:植物园 终点 :乌龙潭 点击 查询 输出:输出:总长度为:2300 m 路线为:植物园-仙人洞-乌龙潭 输入:输入:起点:植物园 终点 :五老峰 点击

55、 查询 输出:输出:总长度为:2750 m 路线为:植物园-仙人洞-含鄱口-五老峰 输入:输入:起点:东林寺 终点 :含鄱口 点击 查询 输出:输出:总长度为:3000 m 路线为:东林寺-如琴湖-仙人洞-含鄱口 输入:输入:起点:东林寺 终点 :大口瀑布 点击 查询 输出:输出:总长度为:3400 m 路线为:东林寺-如琴湖-仙人洞-大口瀑布 输入:输入:起点:大口瀑布 终点 :含鄱口 点击 查询 输出:输出:总长度为:2600 m 路线为:大口瀑布-仙人洞-含鄱口 输入:输入:起点:大口瀑布 终点 :小天池 点击 查询 输出:输出:总长度为:3300 m 路线为:大口瀑布-仙人洞-如琴湖-

56、小天池 输入:输入:起点:小天池 终点 :乌龙潭 点击 查询 输出:输出:总长度为:2900 m 路线为:小天池-如琴湖-仙人洞-乌龙潭 输入:输入:起点:小天池 终点 :东林寺 点击 查询 输出:输出:总长度为:2100 m 路线为:小天池-如琴湖-东林寺 根据测试结果分析,测试数据与理论数据一致,能达到预期效果,该系统运行 正常。 5.25.2 系统维护系统维护 因为软件测试不可能暴露出软件系统中所有潜藏的错误,所以必然要进行维护。 维护阶段是软件生存周期中时间最长的一个阶段,所花费的精力和费用也是最多的 一个阶段。在以后应用阶段,随着环境的变化,要对程序进行变动。所以提高软件 的可维护性

57、也是必要的。 正确的使用和维护系统是它有效工作的保证。所以该系统的维护应遵守以下原 则: 1.保证庐山导游系统的正常工作,它是用户使用的前提条件,为了做到这一点, 应该对该系统的数据进行备份,以防止数据被修改或破坏。 2.定期进行数据更新。 3.经常用防毒软件对该系统进行杀毒,防止病毒入侵。 4.建立完整的软件文档。系统完成后建立系统档案。 第第六六章章 总总 结结 我国的旅游业是在党的十一届三中全会实行改革开放政策以后才起步的新兴产 业。它在城市经济发展中的产业地位、经济作用逐步增强,旅游业对城市经济的拉动 性、社会就业的带动力、以及对文化与环境的促进作用日益显现。旅游业已成为全球 经济中发

58、展势头最强劲和规模最大的产业之一。目前国内外各旅游点都非常重视景点 建设,在搞好旅游硬件的同时,如何为游客提供服务、节省时间也是一个不容忽视的 问题,这也是吸引游客的重要方面。庐山,是世界级名山。自司马迁将庐山载入史 记后,历代诗人墨客相继慕名而来,留下了许多珍贵的名篇佳作。庐山的历史遗迹, 代表了中国历史发展的大趋势,处处闪烁着中华民族历史文化的光华,充分展示了庐 山极高的历史、文化、科学和美学价值。她是千古名山,得到了全国人民厚爱及世界 的肯定。所以我就选择了开发庐山导游系统。该课题所设计知识跨专业,而且专业性 很强,但对作为一个计算机人员来说,这是一次绝好的机会。回顾该系统从选题,到 调

59、研、需求分析、设计、编码实现、测试等,论文的撰写,这系列连贯的过程,感想 颇多,收获也很多。大致的总结几点,如下: 1设计开发一个软件,首先要了解所涉及到行业的现状,一定要想办法进行行 业调研,从不同途径获取该行业的专业知识。合理安排系统设计开发时间,进行实际 开发会发现需求分析与系统设计占主要的时间,如果前面的工作做好了,编码实现占 用的时间很短。所以我们要借助软件工程的思想-对软件开发过程进行控制。 2. 在开发一个系统时,前期的分析准备工作非常的重要。对于系统的需求要明确, 这样才能做到有的放矢。特别是对于系统中数据的存储和重要算法的设计,设计的不 好会出现大量的冗余,不仅浪费存储空间,还影响查询效率。例如:系统中图的存储 设计和求最短路径算法设计。 3.在设计的初期,对一个功能模块的设计,要想出两种或两种以上方案,这样可 以进行比较,从而获得更佳的设计方案,设计开发过程中一定要吸取经验教训,避免 返工。尤其是一些重要算法或功能。在对具体实现功能模块进行编程时,要养成良好 的加注释的习惯,这样的话不仅能理清思路,而且可以为以后的调试程序带来很大的 方便。 4. 独立思考的同时,要虚心向别人请教,可以达到事半功倍的效果。在具体编程 实现系统功能的过程中,我遇到了不少的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论