公园导游图课程设计

合集下载

幼儿园大班导游图教案

幼儿园大班导游图教案

幼儿园大班导游图教案一、教学目标•了解导游图的作用和意义•学会绘制简单的导游图•培养幼儿的观察和记录能力•提高幼儿的团队合作意识二、教学准备•白板、黑板或展示屏•彩色粉笔或白板笔•导游图模板•幼儿园平面图或示意图•地图标识物(如小旗子、彩色方块等)•纸张和绘画工具三、教学步骤第一步:导入引导1.向幼儿解释导游图的概念:导游图是指通过绘制图形、符号和文字的方式,来帮助人们快速了解某个地方的信息和布局。

2.引导幼儿回忆或讨论过去参观过的地方,如公园、动物园、博物馆等,并询问他们是否看到过导游图。

第二步:示范绘制导游图1.展示一张幼儿园平面图或示意图,并解释图中各个部分的含义和名称。

2.使用地图标识物,模拟游览幼儿园的场景,例如从门口到教室、操场、图书馆等地点。

3.向幼儿展示绘制导游图的步骤:–首先,选择一个地点作为导游图的起点,并用一个小图标标示出来。

–接着,从起点出发,根据实际路线绘制箭头和路径,指示出游览路径。

–在途经的每个重要地点上,用符号或文字进行标记,如教室、操场、图书馆等。

–最后,将游览路径连接回起点,形成闭合的导游图。

第三步:分组练习1.将幼儿分成小组,每个小组由4-5名幼儿组成。

2.给每个小组发放一份导游图模板和绘画工具。

3.要求小组成员合作,在导游图模板上绘制幼儿园的导游图。

4.鼓励幼儿讨论和分享自己的绘制过程和体验,并纠正他们在绘制中可能出现的错误。

第四步:分享和展示1.让每个小组派出一名代表,向全班展示他们绘制的导游图。

2.引导幼儿互相欣赏和评价,鼓励他们发表自己的观点和建议。

3.对每个小组的导游图给予鼓励和肯定,并提出改进的建议。

第五步:拓展活动1.给幼儿提供一些简单的任务,让他们在幼儿园中按照导游图进行一次导览。

2.鼓励幼儿观察和记录他们在导览中的所见所闻,可以使用绘画、文字或口头表达的方式来展示。

3.引导幼儿分享他们的导览体验,并和其他小组进行互动交流。

四、教学反思在本节课的教学中,幼儿们通过绘制导游图,进一步了解了导游图的作用和意义。

公园导览图课程设计

公园导览图课程设计

公园导览图课程设计一、课程目标知识目标:1. 学生能理解并描述公园导览图的基本构成元素,包括标题、图例、比例尺、方向指示和景点介绍。

2. 学生能掌握使用比例尺进行距离估算的方法,并能在实际中应用。

3. 学生能识别并运用基本的地理方向词,如北、东、南、西,以及上北下南左西右东。

技能目标:1. 学生能够运用所学知识,独立制作一份公园导览图,展示清晰、准确的景点位置和相关信息。

2. 学生通过小组合作,培养沟通协调能力,共同完成一份具有创意的公园导览图。

情感态度价值观目标:1. 学生对地理学科产生兴趣,认识到地理知识在生活中的实用性。

2. 学生在学习过程中,培养耐心、细心和团队合作精神。

3. 学生通过公园导览图的设计,增强对环境保护和公共设施的认识,提升社会责任感。

课程性质:本课程为地理学科教学,结合实际生活中的应用,注重培养学生的实践操作能力和合作精神。

学生特点:四年级学生具备一定的地理知识基础,好奇心强,喜欢动手操作,但注意力集中时间有限。

教学要求:教师需关注学生的个体差异,采用生动有趣的教学方法,引导学生主动参与,确保课程目标的实现。

在教学过程中,注重培养学生的实际操作能力,提高学生的综合素质。

二、教学内容1. 公园导览图的基本构成:- 标题设计:让学生了解并设计富有特色的标题,包括公园名称和导览图标题。

- 图例说明:介绍图例的作用,列举并解释常用的图例符号。

- 比例尺应用:学习比例尺的定义,掌握比例尺的使用方法,进行实际距离的估算。

- 方向指示:复习地理方向词,让学生在实际导览图上练习方向判断。

2. 公园景点介绍:- 选择教材中涉及的公园作为案例,详细介绍公园内的主要景点。

- 分析景点的地理位置、特点及相互之间的关系。

3. 导览图制作:- 制定详细的教学大纲,分步骤指导学生制作公园导览图。

- 教学内容的安排和进度:第一课时,学习公园导览图的基本构成;第二课时,分析公园景点及相互关系;第三课时,分组讨论并制作导览图。

幼儿园大班学习活动:公园导游图.doc

幼儿园大班学习活动:公园导游图.doc

幼儿园大班学习活动:公园导游图设计思路:在最近开展的我的城市主题活动中,幼儿关注的焦点从中国到上海,从黄浦江、东方明珠、高架路到星罗棋布的公园、绿地。

他们对自己幼儿园的位置、家的所在地及周边熟悉的设施、路名都很热衷于去看一看、找一找。

我园遵循生活教育的理念,提倡让幼儿从自己身边开始,与周边环境互动。

我们居住的社区和幼儿园附近有一个小公园东安公园,班里一半以上的幼儿都去过。

所以,我选择了东安公园的导游图作为活动的载体:一是因为幼儿对公园比较熟悉,二是因为公园大小合适幼儿后期的真实体验。

整个教学活动主要分为三个流程:寻找游玩地点(东安公园)观察公园导游图根据要求,设计游玩路线。

在寻找幼儿园位置的过程中充分调动幼儿已有的生活经验:观察导游图引发幼儿对各种图示、标志的经验,交流、关注身边的事物;自主设计游玩路线,这对刚升人大班的幼儿是一种挑战,因为其中整合了空间方位、时间安排、生活习惯等要素,在师生、生生的互动中使幼儿在计划一件事情的时候能有更周全、更合理的思维方式。

幼儿间的差异也是一种学习资源,幼儿尝试用符号表示路线的不同方法、有条理地介绍自己的想法,都是教师要捕捉的有价值的经验点。

活动的延伸部分,我还在个体学习活动中让幼儿设计从不同的门进入、出来,引导幼儿经验的迁移。

让他们能在以后的实际生活中学会运用,为生活带来方便。

活动目标:1.看看、说说东安公园导游图,了解图示、标志在我们生活中的作用和意义。

2.尝试设计游玩路线,用符号、语言清楚地记录、表达自己的想法。

活动准备:1.材料准备:PPT、上海地图的局部图、东安公园导游图、彩笔每组一盒。

2.经验准备:幼儿有去公园游玩的经历,熟悉周边环境、设施。

活动过程:一、寻找游玩地点东安公园通过在周边地图上找找东安公园在哪里,引导幼儿回忆,并借助图示进行有效观察。

1.引出话题:东安公园在哪里?(1)你们去过很多公园,你们去过东安公园吗?和谁一起去的?(2)过几天小班的弟弟妹妹要去东安公园,想请你们做小导游,你们愿意吗?(3)东安公园在哪里?有什么办法可以知道(看地图、打电话咨询、问路人)?2.观察地图:找找去东安公园的路线。

公园导览图课课程设计

公园导览图课课程设计

公园导览图课课程设计一、教学目标本课程旨在通过公园导览图的学习,让学生掌握公园导览图的基本知识,培养学生读图、用图的能力,提高学生对公园导览图的识别和理解能力,使学生能够运用公园导览图进行公园游览。

1.了解公园导览图的基本要素,如地图比例、图例、指北针等。

2.掌握公园导览图的阅读方法,能够正确识别和使用公园导览图。

3.了解公园导览图的分类,如平面图、立面图、鸟瞰图等。

4.能够使用公园导览图找到指定地点。

5.能够分析公园导览图,了解公园的布局和景点分布。

6.能够制作简单的公园导览图。

情感态度价值观目标:1.培养学生的观察力和想象力,提高学生对公园导览图的兴趣。

2.培养学生合作学习的精神,通过小组讨论和合作完成导览图的制作。

3.培养学生爱护公共设施的意识,学会正确使用和保护公园导览图。

二、教学内容本课程的教学内容主要包括公园导览图的基本知识、阅读方法和制作技巧。

1.公园导览图的基本知识:介绍地图比例、图例、指北针等基本要素。

2.公园导览图的阅读方法:讲解如何正确识别和使用公园导览图,如何找到指定地点和了解公园的布局。

3.公园导览图的制作技巧:教授学生如何制作简单的公园导览图,包括选择纸张、绘制比例尺、标注景点等。

三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

1.讲授法:讲解公园导览图的基本知识和阅读方法。

2.讨论法:分组讨论,让学生分享对公园导览图的理解和制作经验。

3.案例分析法:分析实际案例,让学生学会如何运用公园导览图进行公园游览。

4.实验法:学生动手制作公园导览图,提高学生的实际操作能力。

四、教学资源本课程所需的教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:提供教材,让学生掌握公园导览图的基本知识和阅读方法。

2.参考书:提供相关参考书籍,丰富学生的知识体系。

3.多媒体资料:制作多媒体课件,生动展示公园导览图的制作和使用过程。

4.实验设备:提供绘图工具和材料,让学生动手制作公园导览图。

某公园导游图

某公园导游图

电子信息工程学系实验报告课程名称:数据结构Array实验项目名称:某公园导游图实验时间:班级:姓名:学号:实验目的:1.掌握图的基本存储方法。

2.掌握有关图的操作算法并用高级语言编程实现;3.熟练掌握求图的最短路径的方法。

4.巩固和加深对各种数据结构的理解。

5.掌握恰当选用数据结构并设计与实际问题相符的算法的能力。

实验环境:一人一台微机,安装windows系统及vc++6.0或TC开发环境。

实验内容及过程:给出一张某公园的导游图(景点不少于10个),游客通过终端询问可知:1.任一景点的相关信息2.从某一景点到另一景点的最短路径实验结果及分析:程序:#include<stdio.h>#define MaxValue 100 /*定义最大值即无穷大用100来代替*/void ADJMATRIX( int A[][7],int n,int e) /*采用邻接矩阵的方法来存储图*/{int i,j,k,weight;for(i=0;i<n;i++)for(j=0;j<n;j++){if(i==j)A[i][j]=0;elseA[i][j]=MaxValue;} /*邻接矩阵赋初值其中顶点到顶点本身路径规定为0*/for(k=0;k<e;k++){scanf("%d,%d,%d",&i,&j,&weight); /*输入一个顶点偶对与权值*/A[i][j]=weight;A[j][i]=weight;}}void SHORTEST_PA TH(int cost[][7],int v,int n, int dist[],int path[7]){ int i,w,u,cout,s[7],j;int min=100; /*在后面找最短路径顶点要用到该值*/for(i=0;i<n;i++){s[i]=0; /*标记数组置0*/dist[i]=cost[v][i]; /*将邻接矩阵第V行元素依次送dist数组*/} /*对数组进行初始化*/s[v]=1;cout=1; /*计数器赋初值1*/path[cout-1]=v+1; /*用数组path来存储经过的路径或说是顶点*/while(cout<n-2){min=100;for(j=0;j<n;j++) /* 该for语句的作用是找到一个与v最近的顶点并用u来标记*/if(s[j]==0&&dist[j]<min&&dist[j]>0){min=dist[j];u=j;}s[u]=1;cout++;path[cout-1]=u+1;for(j=0;j<n;j++) /*根据u更新从v到所有尚未确定最短路径的顶点的路径长度*/{if(s[j]==0&&dist[u]+cost[u][j]<dist[j]&&(!path[u]) )dist[j]=dist[u]+cost[u][j];}}for(j=0;j<cout;j++) /*该for语句的作用是输出从v出发最短路径所经过的顶点*/printf("%d->",path[j]);}void main (){int cost[7][7], dist[7], path[7][7],a,b,c;ADJMA TRIX(cost,7,9) ; /*调用函数ADJMATRIX( int A[][7],int n,int e)生成图的邻接矩阵结构*/for(a=0;a<7;a++){ /*该for语句作用是输出所创建的图——以邻接矩阵输出*/for(b=0;b<7;b++)printf("%-4d",cost[a][b]);printf("\n");}printf("\n\nPlease input the source v:");scanf("%d",&c); /* 控制输入点即源点*/SHORTEST_PA TH(cost,c,7, dist,path); /* 调用函数SHORTEST_PA TH(int cost[][7],int v,int n, int dist[],int path[7])得到最短路径*/getch();}分析:为了便于分析本次试验我采用课本的数据运行结果:其中100表示的是无穷大,运行结果为源点到顶点2的最短路径。

幼儿园大班学习活动公园导游图教案

幼儿园大班学习活动公园导游图教案

幼儿园大班学习活动公园导游图教案设计思路:在最近开展的“我的城市”主题活动中,幼儿关注的焦点从中国到上海,从黄浦江、东方明珠、高架路到星罗棋布的公园、绿地。

他们对自己幼儿园的位置、家的所在地及周边熟悉的设施、路名都很热衷于去看一看、找一找。

我园遵循生活教育的理念,提倡让幼儿从自己身边开始,与周边环境互动。

我们居住的社区和幼儿园附近有一个小公园——东安公园,班里一半以上的幼儿都去过。

所以,我选择了东安公园的导游图作为活动的载体:一是因为幼儿对公园比较熟悉,二是因为公园大小合适幼儿后期的真实体验。

整个教学活动主要分为三个流程:寻找游玩地点(东安公园)——观察公园导游图——根据要求,设计游玩路线。

在寻找幼儿园位置的过程中充分调动幼儿已有的生活经验:观察导游图引发幼儿对各种图示、标志的经验,交流、关注身边的事物;自主设计游玩路线,这对刚升人大班的幼儿是一种挑战,因为其中整合了空间方位、时间安排、生活习惯等要素,在师生、生生的互动中使幼儿在计划一件事情的时候能有更周全、更合理的思维方式。

幼儿间的差异也是一种学习资源,幼儿尝试用符号表示路线的不同方法、有条理地介绍自己的想法,都是教师要捕捉的有价值的经验点。

活动的延伸部分,我还在个体学习活动中让幼儿设计从不同的门进入、出来,引导幼儿经验的迁移。

让他们能在以后的实际生活中学会运用,为生活带来方便。

活动目标:1.看看、说说东安公园导游图,了解图示、标志在我们生活中的作用和意义。

2.尝试设计游玩路线,用符号、语言清楚地记录、表达自己的想法。

活动准备:1.材料准备:PPT、上海地图的局部图、东安公园导游图、彩笔每组一盒。

2.经验准备:幼儿有去公园游玩的经历,熟悉周边环境、设施。

活动过程:一、寻找游玩地点——东安公园通过在周边地图上找找东安公园在哪里,引导幼儿回忆,并借助图示进行有效观察。

1.引出话题:东安公园在哪里?(1)你们去过很多公园,你们去过东安公园吗?和谁一起去的?(2)过几天小班的弟弟妹妹要去东安公园,想请你们做小导游,你们愿意吗?(3)东安公园在哪里?有什么办法可以知道(看地图、打电话咨询、问路人)?2.观察地图:找找去东安公园的路线。

某数据结构课程设计公园导游图

某数据结构课程设计公园导游图

实验四:图(内容:某公园导游图)一、问题描述:公园导游系统:给出一张某公园的导游图,游客通过终端询问可知:从某一景到另一景点的最短路径。

游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边) 。

、设计描述:1. 输入导游图的算法(存储方法) .本程序特地设计函数void initgraph() 用于实现键盘输入图的结构;2. 可访问导游图中任一景点的算法.为此设计了函数void vist(GraphMatrix graph) 用于实现访问任一景点的信息;3. 最短路径从一景点到另一景点的算法。

利用floyd 算法-实现每一对景点间的最短路径。

并利用void outgraph() 函数实现显示起始点和终点间的最短路径和其长度;三、程序清单:#include<iostream> using namespace std;#include<stdio.h>#define MAXVEX 100#define MAX 999typedef char VexType;typedef float AdjType;typedef struct {int n;VexType vexs[MAXVEX]; AdjType arcs[MAXVEX][MAXVEX]; } GraphMatrix; GraphMatrix graph;int i, j, k; fOr (i = 0; i < pgraph->n; i++) fOr (j = 0; j <pgraph->n; j++) { if (pgraph->arcs[i][j] != MAX)ppath->nextvex[i][j] = j; else ppath->nextvex[i][j] = -1; ppath->a[i][j] = pgraph->arcs[i][j];}for (k = 0; k < pgraph->n; k++)for (i = 0; i < pgraph->n; i++)for (j = 0; j < pgraph->n; j++) {if ( ppath->a[i][k] >= MAX || ppath->a[k][j] >= MAX ) continue;//定义图结构/* 图的顶点个数 *//* 顶点信息 *//* 边信息 */ //定义一个图 graphtypedef struct {AdjType a[MAXVEX][MAXVEX];int nextvex[MAXVEX][MAXVEX]; } ShortPath; ShortPath path; //定义最短路径ShOrtPath 结构/* 关系矩阵 A ,存放每对顶点间最短路径长度 *//* nextvex[i][j] 存放 vi 到 vj 最短路径上 vi 的后继顶点的下标值*/ //定义路径 pathvOid flOyd(GraphMatrix * pgraph, ShOrtPath * ppath) //flOyd 算法 -用于实现每一对景点间的最短路径if ( ppath->a[i][j] > ppath->a[i][k]+ ppath->a[k][j] ) { ppath->a[i][j] = ppath->a[i][k] + ppath->a[k][j];ppath->nextvex[i][j] = ppath->nextvex[i][k];}}}void outgraph() //out() 函数用于实现显示起始点和终点间的最短路径和其长度{int c,b,i;cout<<endl;CoUtV<"请输入想查找起始点和终点:"; Zz输入要查找起始点和终点(本程序限于编号(int型)) cout<<endl;Cin>>C;Cin>>b;i=path.a[c][b]; ZZ通过path.a[c][b]把路径长度赋给i//输出路径长度 //此处输出路径的第一个编号 //循环顺序输出路径始点和终点之间的景点编号 //再输出路径的最后一个编号 } vOid initgraph() //该函数用于实现键盘输入图的结构{ int i,m,j;printf(" 请输入公园景点的个数: ");//图结点的个数赋给 graph.n sCanf("%d",&m);graph.n=m;fOr(i=0;iVgraph.n;i++)//循环输入结点顶点信息{ Printf("请输入第%i 个景点信息:",i); Zz 为了简明起见此程序结点顶点信息限于字符型Cin>>graph.vexs[i];}Printf("请输入公园的邻接矩阵的信息\n");ZZ 循环输入图的邻接矩阵信息(也就是输入一个二维数组) fOr(i=0;iVgraPh.n;i++)for(j=0;j<graph.n;j++) {printf(" 请输入第 %d 行,第 %d 列的元素 :",i+1,j+1); cin>>graph.arcs[i][j]; }}COutV<"该路径总长为:";cout<<i<<endl;COUtVV"所得路径顺序为";COutVVC;C=path.nextvex[C][b];fOr(;C!=b;C=path.nextvex[C][b])COutVV","VVC;COutVV","VVb;COutVVendl;void vist(GraphMatrix graph) //函数用于实现访问任一景点的信息{ int i;cout<<endl;COUtV<"你想知道哪个景点的信息:";Zz注意输入的是景点的编号cin>>i;COutVVendl;COUtVV"景点信息查询结果为:";COutvVgraPh.vexs[i]; //输出景点信息COutVVendl;}int jud() //用于判断是否继续执行特定的下一步程序{int a;cout<<"还想继续查询?(1 &0)";Cin>>a;return a;}int main(){int i,j; initgraph();floyd(&graph, &path);COutV<"为了验证下面运算结果的方便,for (i = 0; i < graph.n; i++){fOr (j = 0; j V graph.n; j++)printf("%d ", path.nextvex[i][j]);putChar('\n');}COutVVendl;Outgraph(); while(jud())Outgraph(); vist(graph);COutVVendl;while(jud()) vist(graph);COutVVendl;return 0;//initgraph()函数来实现键盘输入图的结构循环输出nextvex[i][j] 数组";//为了验证下面运算结果的方便,循环输出nextvex[i][j] 数组//nextvex[i][j] 存放vi 到vj 最短路径上vi 的后继顶点的下标值//oUtgraPh()函数用于实现显示起始点和终点间的最短路径和其长度//函数用于实现访问任一景点的信息验四:图(内容:某公园导游图).①问题描述给出一张某公园的导游图,游客通过终端询问可知:(1 )从某一景点到另一景点的最短路径。

公园导游图课程设计

公园导游图课程设计

公园导游图 课程设计一、课程目标知识目标:1. 学生能够理解公园导游图的基本组成元素,如比例尺、图例、方向标识等;2. 学生能够掌握阅读和使用公园导游图的方法,获取所需信息;3. 学生能够了解公园的基本布局、景点分布及各景点的特色。

技能目标:1. 学生能够运用所学知识,独立完成公园导游图的绘制;2. 学生能够运用导游图,进行实地导游讲解,提升表达和沟通能力;3. 学生能够通过分析导游图,提高空间想象力和逻辑思维能力。

情感态度价值观目标:1. 培养学生对地理学科的兴趣,激发他们探索公园和自然环境的热情;2. 增强学生的环保意识,让他们在游览公园时能够爱护公共设施和环境;3. 培养学生团队协作精神,学会在集体活动中相互帮助和分享。

本课程针对小学四年级学生设计,结合学科特点,注重培养学生的实际操作能力和观察能力。

通过本课程的学习,使学生能够将所学知识运用到实际生活中,提高他们解决实际问题的能力。

同时,课程强调情感态度价值观的培养,使学生在掌握知识技能的同时,树立正确的价值观,增强社会责任感和环保意识。

教学过程中,教师应关注学生的个体差异,因材施教,确保每个学生都能达到课程目标。

二、教学内容本课程以《小学四年级社会与地理》教材中“我们的公园”章节为依据,结合课程目标,组织以下教学内容:1. 公园导游图的基本组成:介绍比例尺、图例、方向标识等元素的作用和识别方法;2. 阅读与使用导游图:教授学生如何根据导游图获取公园景点信息,规划游览路线;3. 公园景点介绍:讲解公园内各景点的特点、历史背景及相关故事;4. 导游图绘制:指导学生运用所学知识,动手绘制公园导游图;5. 实地导游实践:组织学生进行实地导游讲解,培养表达和沟通能力;6. 环保教育:结合公园环境,进行环保意识教育,提高学生的环保素养。

教学内容安排和进度如下:1. 第1课时:介绍公园导游图的基本组成,学习比例尺、图例等元素;2. 第2课时:阅读与使用导游图,了解公园景点信息;3. 第3课时:公园景点介绍,了解各景点特色;4. 第4课时:导游图绘制,动手绘制公园导游图;5. 第5课时:实地导游实践,进行实地讲解;6. 第6课时:环保教育,培养环保意识。

某数据结构课程设计公园导游图

某数据结构课程设计公园导游图

实验四:图(内容:某公园导游图)一、问题描述:公园导游系统:给出一张某公园的导游图,游客通过终端询问可知︰从某一景到另一景点的最短路径。

游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。

二、设计描述:1.输入导游图的算法(存储方法).本程序特地设计函数void initgraph()用于实现键盘输入图的结构;2.可访问导游图中任一景点的算法.为此设计了函数void vist(GraphMatrix graph)用于实现访问任一景点的信息;3.最短路径从一景点到另一景点的算法。

利用floyd算法-实现每一对景点间的最短路径。

并利用void outgraph()函数实现显示起始点和终点间的最短路径和其长度;三、程序清单:#include<iostream>using namespace std;#include<stdio.h>#define MAXVEX 100#define MAX 999typedef char VexType;.typedef float AdjType;typedef struct //定义图结构{int n; /* 图的顶点个数*/VexType vexs[MAXVEX]; /* 顶点信息*/AdjType arcs[MAXVEX][MAXVEX]; /* 边信息*/} GraphMatrix;GraphMatrix graph; //定义一个图graphtypedef struct //定义最短路径ShortPath结构{AdjType a[MAXVEX][MAXVEX]; /* 关系矩阵A,存放每对顶点间最短路径长度*/int nextvex[MAXVEX][MAXVEX];/* nextvex[i][j]存放vi到vj最短路径上vi的后继顶点的下标值*/ } ShortPath;ShortPath path; //定义路径pathvoid floyd(GraphMatrix * pgraph, ShortPath * ppath) //floyd算法-用于实现每一对景点间的最短路径{int i, j, k;for (i = 0; i < pgraph->n; i++)for (j = 0; j < pgraph->n; j++) {if (pgraph->arcs[i][j] != MAX)ppath->nextvex[i][j] = j;.else ppath->nextvex[i][j] = -1;ppath->a[i][j] = pgraph->arcs[i][j];}for (k = 0; k < pgraph->n; k++)for (i = 0; i < pgraph->n; i++)for (j = 0; j < pgraph->n; j++) {if ( ppath->a[i][k] >= MAX || ppath->a[k][j] >= MAX )continue;if ( ppath->a[i][j] > ppath->a[i][k]+ ppath->a[k][j] ) {ppath->a[i][j] = ppath->a[i][k] + ppath->a[k][j];ppath->nextvex[i][j] = ppath->nextvex[i][k];}}}void outgraph() //out()函数用于实现显示起始点和终点间的最短路径和其长度{int c,b,i;cout<<endl;cout<<"请输入想查找起始点和终点:"; //输入要查找起始点和终点(本程序限于编号(int型))cout<<endl;cin>>c;cin>>b;i=path.a[c][b]; //通过path.a[c][b]把路径长度赋给i.cout<<"该路径总长为:";cout<<i<<endl; //输出路径长度cout<<"所得路径顺序为";cout<<c; //此处输出路径的第一个编号c=path.nextvex[c][b];for(;c!=b;c=path.nextvex[c][b]) //循环顺序输出路径始点和终点之间的景点编号cout<<","<<c;cout<<","<<b; //再输出路径的最后一个编号cout<<endl;}void initgraph() //该函数用于实现键盘输入图的结构{int i,m,j;printf("请输入公园景点的个数:"); //图结点的个数赋给graph.nscanf("%d",&m);graph.n=m;for(i=0;i<graph.n;i++) //循环输入结点顶点信息{printf("请输入第%i个景点信息:",i); //为了简明起见此程序结点顶点信息限于字符型cin>>graph.vexs[i];}printf("请输入公园的邻接矩阵的信息\n");//循环输入图的邻接矩阵信息(也就是输入一个二维数组)for(i=0;i<graph.n;i++).for(j=0;j<graph.n;j++){printf("请输入第%d行,第%d列的元素:",i+1,j+1); cin>>graph.arcs[i][j]; }}void vist(GraphMatrix graph) //函数用于实现访问任一景点的信息{ int i;cout<<endl;cout<<"你想知道哪个景点的信息:"; //注意输入的是景点的编号cin>>i;cout<<endl;cout<<"景点信息查询结果为:";cout<<graph.vexs[i]; //输出景点信息cout<<endl;}int jud() //用于判断是否继续执行特定的下一步程序{int a;cout<<"还想继续查询?(1&0)";cin>>a;return a;}int main().{int i,j;initgraph(); //initgraph()函数来实现键盘输入图的结构floyd(&graph, &path);cout<<"为了验证下面运算结果的方便,循环输出nextvex[i][j]数组";for (i = 0; i < graph.n; i++){for (j = 0; j < graph.n; j++) //为了验证下面运算结果的方便,循环输出nextvex[i][j]数组printf("%d ", path.nextvex[i][j]); //nextvex[i][j]存放vi到vj最短路径上vi的后继顶点的下标值putchar('\n');}cout<<endl;outgraph();while(jud())outgraph(); //outgraph()函数用于实现显示起始点和终点间的最短路径和其长度vist(graph); //函数用于实现访问任一景点的信息cout<<endl;while(jud())vist(graph);cout<<endl;return 0;}.验四:图(内容:某公园导游图)①.问题描述给出一张某公园的导游图,游客通过终端询问可知:(1)从某一景点到另一景点的最短路径。

公园导游系统c课程设计

公园导游系统c课程设计

公园导游系统c 课程设计一、课程目标知识目标:1. 让学生掌握公园导游系统的基本组成和功能,了解其在公园管理和服务中的应用。

2. 使学生了解信息技术的应用,如地理信息系统(GIS)、移动计算等在公园导游系统中的作用。

3. 帮助学生理解公园的自然、文化和历史信息,并将其有效地整合到导游系统中。

技能目标:1. 培养学生运用信息技术设计公园导游系统的能力,包括需求分析、系统设计、功能实现等。

2. 提高学生团队协作和沟通能力,能在项目中进行有效分工与合作。

3. 培养学生解决实际问题的能力,能在现实生活中运用所学知识为公园游客提供优质服务。

情感态度价值观目标:1. 培养学生对公园文化和自然环境的热爱,提高环保意识。

2. 增强学生社会责任感,使其意识到信息技术在公园管理和服务中的重要作用。

3. 激发学生创新精神,鼓励他们勇于尝试,不断优化公园导游系统。

本课程针对高年级学生,结合信息技术和公园导游的实际需求,注重知识与实践相结合。

课程目标旨在使学生掌握公园导游系统的相关知识,培养其团队协作、沟通和创新能力,同时提高学生的环保意识和责任感。

通过本课程的学习,学生能够将所学知识应用于实际项目中,为公园游客提供更好的服务。

二、教学内容1. 公园导游系统概述:介绍公园导游系统的定义、发展历程、功能及在公园管理中的作用。

教材章节:第一章 导游系统概述2. 公园导游系统的技术构成:学习信息技术在公园导游系统中的应用,如GIS、移动计算、物联网等。

教材章节:第二章 公园导游系统的技术构成3. 公园导游系统的设计与实现:分析公园导游系统的设计原则、需求分析、系统架构及功能模块。

教材章节:第三章 公园导游系统的设计与实现4. 公园导游系统的实际应用:探讨公园导游系统在实际中的应用案例,分析其优缺点,并提出改进措施。

教材章节:第四章 公园导游系统的实际应用5. 团队协作与项目管理:培养学生的团队协作能力和项目管理能力,以实际项目为例,进行项目分工、进度控制等。

公园导游图课程设计

公园导游图课程设计

课程设计题目公园导游图专业网络工程班级1班姓名尹颖指导老师孙菁2014 年12 月28 日课程设计(论文)课程设计任务书2014~2015学年第 1学期学生姓名:尹颖吴东旭许益强葛溆李永康朱世豪专业班级: 12网络工程指导教师:孙菁一、课程设计题目:公园导游图二、课程设计内容给出一张某公园的导游图,游客通过终端询问可知:从某一景点到另一景点的最短路径。

游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。

三、进度安排1.初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2.完成最低要求:建立一个文件,包括5个景点情况,能完成遍历功能;3.进一步要求:进一步扩充景点数目,画出景点图,有兴趣的同学可以自己扩充系统功能。

四、基本要求1. 界面友好,函数功能要划分好2. 总体设计应画一流程图3. 程序要加必要的注释4. 要提供程序测试方案5. 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。

目录摘要1 问题描述 (3)1.1图、无向图 (3)1.1.1图的存储结构 (3)1.1.2 图的邻接矩阵表示法 (3)1.2算最短路径 (4)1.3无向图遍历 (4)1.4广度优先搜索 (4)2.系统分析 (5)2.1系统流程图 (5)3 系统设计 (5)3.1主要数据结构 (6)3.2主要函数说明 (6)3.3主要算法说明 (6)3.3.1数组表示法 (6)3.3.2F LOYD算法 (6)4 心得体会 (7)附录一:源程序 (8)附录三:参考文献························································错误!未定义书签。

公园导游图课程设计

公园导游图课程设计

公园导游图课程设计一、课程目标知识目标:1. 学生能理解并掌握公园导游图的基本构成要素,如比例尺、图例、方向标识等。

2. 学生能通过观察和分析,识别公园内的主要景点和设施,并了解其功能及特点。

3. 学生能够运用地图知识,描述公园内各景点的相对位置关系。

技能目标:1. 培养学生运用地图进行空间定位和信息提取的能力。

2. 培养学生通过观察、分析、归纳等方法,独立完成公园导游图的制作。

3. 培养学生运用所学知识,解决实际问题的能力。

情感态度价值观目标:1. 培养学生对地理学科的兴趣和热爱,增强对公园环境的保护意识。

2. 培养学生团队协作、共同探究的精神,提高沟通和表达能力。

3. 培养学生尊重他人意见,学会倾听、理解和接纳不同的观点。

课程性质:本课程为地理学科教学实践活动,结合学生所在年级特点,以培养学生实际应用能力为主。

学生特点:学生具备一定的地图知识基础,对公园环境有一定的认知,但空间想象力和实际操作能力有待提高。

教学要求:教师需引导学生将所学知识运用到实际情境中,注重培养学生的动手操作能力和解决问题的能力。

在教学过程中,关注学生的个体差异,鼓励学生积极参与,充分调动学生的主观能动性。

通过课程学习,使学生达到课程目标,为后续的地理学习奠定基础。

二、教学内容1. 公园导游图的基本知识:- 比例尺的认识与应用- 图例的识别与使用- 方向标识的辨别方法- 空间定位与距离估算2. 公园景点与设施分析:- 主要景点的分布与特点- 公园设施的类别与功能- 景点间的相对位置关系3. 公园导游图的制作:- 导游图的绘制方法与步骤- 比例尺、图例、方向标识的合理运用- 景点与设施的标注技巧4. 教学大纲安排:- 第一课时:公园导游图的基本知识学习- 第二课时:公园景点与设施分析- 第三课时:公园导游图的制作实践5. 教材章节关联:- 《地理》教材第三章:地图的应用- 《地理》教材第四章:城市与旅游景点教学内容注重科学性和系统性,结合课程目标,确保学生能够掌握公园导游图的相关知识。

公园导览图课程设计

公园导览图课程设计

公园导览图课程设计一、教学目标本课程旨在通过公园导览图的学习,让学生掌握以下知识目标:1.了解公园导览图的基本要素,如景点标识、路径指示、比例尺等。

2.学会阅读和理解公园导览图,能快速找到所需信息。

3.掌握制作简单公园导览图的方法和技巧。

4.培养学生的观察力和空间想象力,能从导览图中获取有效信息。

5.提高学生的地图绘制能力,学会用符号和文字表达景点信息。

6.训练学生的团队协作能力,通过小组合作完成公园导览图的制作。

情感态度价值观目标:1.培养学生对公园导览图的兴趣,增强对地图的依赖和运用意识。

2.培养学生爱护公共设施、保护环境的意识。

3.培养学生团队合作、积极进取的精神风貌。

二、教学内容本课程的教学内容主要包括以下几个部分:1.公园导览图的基本概念和要素,如景点标识、路径指示、比例尺等。

2.公园导览图的阅读方法,如何快速找到所需信息。

3.公园导览图的制作方法和技巧,包括符号选择、文字表述等。

4.实践操作:学生分组制作公园导览图,并进行展示和评价。

三、教学方法为了提高教学效果,本课程将采用以下教学方法:1.讲授法:教师讲解公园导览图的基本概念和制作方法。

2.案例分析法:分析真实案例,让学生理解公园导览图的阅读和制作技巧。

3.实验法:学生分组制作公园导览图,实践所学知识。

4.讨论法:分组讨论,分享制作心得,互相评价,提高团队协作能力。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《公园导览图制作指南》2.参考书:相关地图制作和设计的书籍3.多媒体资料:公园导览图的案例视频和图片4.实验设备:画图工具、打印机、纸张等5.网络资源:相关地图制作软件和在线教程五、教学评估本课程的教学评估将采用多元化方式,全面客观地评价学生的学习成果。

评估内容包括:1.平时表现:包括课堂参与度、小组讨论表现、提问回答等,占总评的30%。

2.作业:包括练习题、研究报告等,占总评的20%。

3.考试:包括期中和期末考试,占总评的50%。

公园的导游图课程设计

公园的导游图课程设计

公园的导游图课程设计一、课程目标知识目标:1. 学生能理解并描述公园导游图的基本构成元素,包括地图比例尺、方向指示、景点标识等。

2. 学生能够识别并解读公园导游图上的不同符号和颜色所代表的意义。

3. 学生能够掌握使用导游图查找公园内特定景点和设施的方法。

技能目标:1. 学生培养空间定位和方向识别能力,能够利用导游图在公园中进行定位和导航。

2. 学生通过小组合作,能够设计并绘制出简单的公园导游图,展示必要的信息。

3. 学生能够运用地图阅读技巧,分析公园导游图上的信息,规划出合理的游览路线。

情感态度价值观目标:1. 培养学生对地理信息的兴趣,激发他们探索周围环境的热情。

2. 增强学生的环境保护意识,通过了解公园内的自然和人文景观,培养尊重和爱护公共环境的责任感。

3. 通过团队协作活动,学生学会相互尊重和沟通,培养合作精神和集体荣誉感。

本课程针对小学四年级学生设计,结合他们好奇心强、动手能力逐渐增强的特点,旨在通过公园导游图的学习,使学生在实践中掌握地理知识和地图技能,同时培养他们的环境意识和团队协作能力。

课程目标旨在具体、可衡量,确保学生能够明确学习成果,并为后续的教学设计和评估提供清晰的方向。

二、教学内容本章节教学内容依据课程目标,围绕公园导游图的制作与应用展开。

主要包括以下几部分:1. 导游图的基本知识:- 地图的比例尺、方向、图例等基本要素;- 导游图的设计原则和注意事项。

2. 公园导游图的认识与应用:- 识别导游图上的景点、设施及其符号;- 学会使用导游图查找目标地点和规划游览路线。

3. 制作简单的公园导游图:- 收集公园相关信息,如景点介绍、设施分布等;- 运用所学知识,小组合作绘制导游图,展示必要信息。

4. 教学内容的安排与进度:- 第一课时:介绍导游图的基本知识和设计原则;- 第二课时:认识公园导游图,学习解读和查找信息;- 第三课时:分组进行实地考察,收集资料;- 第四课时:小组合作绘制导游图,展示成果。

公园导游图课设1

公园导游图课设1

课程设计报告课程名称数据结构课题名称公园导游图专业计算机科学与技术班级计算机0702学号200703010235姓名蔡鄂湘指导教师陈淑红李杰君李珍辉2009年10月26日湖南工程学院课程设计任务书课程名称数据结构课题公园导游图专业班级计算机0702学生姓名蔡鄂湘学号200703010235指导老师陈淑红李杰君李珍辉审批任务书下达日期2009 年10 月8 日任务完成日期2009 年11 月8 日1设计内容与设计要求1.1设计内容1.1.9 公园导游图给出一张某公园的导游图,游客通过终端询问可知:从某一景点到另一景点的最短路径。

游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。

要求用图示展示最佳路径。

1.2 选题方案:所选题目根据学号确定,学号模9加1,即(学号%9+1)。

如你的学号为12,则所选题目号为:12%9+1=(题目4)。

注意,所有的课题都要求用图形方式演示步骤和结果。

有兴趣的同学可以自己针对数据结构课程中所讲算法来设计一个演示过程的算法,但要预先告知老师,经过审批,方可确定课题。

1.3设计要求:1.3.1 课程设计报告规范(1)需求分析a.程序的功能。

b.输入输出的要求。

(2)概要设计a.程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系;每个模块的功能。

b.课题涉及的数据结构和数据库结构;即要存储什么数据,这些数据是什么样的结构,它们之间有什么关系等。

(3)详细设计a.采用C语言定义相关的数据类型。

b.写出各模块的类C码算法。

c.画出各函数的调用关系图、主要函数的流程图。

(4)调试分析以及设计体会a.测试数据:准备典型的测试数据和测试方案,包括正确的输入及输出结果和含有错误的输入及输出结果。

b.程序调试中遇到的问题以及解决问题的方法。

c.课程设计过程经验教训、心得体会。

(5)使用说明用户使用手册:说明如何使用你编写的程序,详细列出每一步的操作步骤。

公园的导游图课程设计

公园的导游图课程设计

公园的导游图课程设计一、教学目标本课程旨在通过公园导游图的学习,让学生掌握以下知识目标:1.了解导游图的基本组成部分及其含义。

2.掌握导游图的阅读方法及技巧。

3.熟悉公园的主要景点及其特色。

4.培养学生独立阅读导游图的能力。

5.培养学生运用导游图进行公园游览规划的能力。

6.培养学生通过导游图进行信息提取和表达能力。

情感态度价值观目标:1.培养学生对公园导游图的兴趣,提高他们对公共信息的关注度。

2.培养学生合作学习的精神,增强团队意识。

3.培养学生爱护公共设施,维护公共秩序的价值观。

二、教学内容本课程的教学内容主要包括以下几个部分:1.导游图的基本组成部分及其含义:如地图、指向标、图例、比例尺等。

2.导游图的阅读方法及技巧:如如何快速找到目的地、如何判断方向等。

3.公园的主要景点及其特色:通过导游图了解公园的历史、文化、自然景观等。

4.实践练习:学生分组进行导游图的阅读和应用,设计公园游览路线。

三、教学方法为了提高教学效果,本课程将采用以下教学方法:1.讲授法:教师讲解导游图的基本知识和阅读技巧。

2.讨论法:学生分组讨论导游图的应用场景和实际操作。

3.案例分析法:分析具体公园导游图,引导学生思考和解决问题。

4.实验法:学生分组设计导游图,进行实际应用和反馈。

四、教学资源为了支持教学内容的实施,我们将准备以下教学资源:1.教材:提供相关导游图知识的教材或教辅材料。

2.参考书:推荐学生阅读相关的公园导游图书籍。

3.多媒体资料:制作课件、演示文稿等,以图文并茂的形式展示教学内容。

4.实验设备:提供公园导游图设计所需的材料和工具。

五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:评估学生在课堂上的参与度、提问回答等情况,占总评的20%。

2.作业:评估学生完成作业的质量与速度,占总评的30%。

3.考试:期末进行一次闭卷考试,测试学生的导游图知识和应用能力,占总评的50%。

评估方式力求客观、公正,全面反映学生的学习成果。

数据结构课程设计报告 (附有完整可运行出来的代码)

数据结构课程设计报告 (附有完整可运行出来的代码)

课程设计报告设计题目:公园导游图一、流程图二、程序代码#include<iostream>using namespace std;#include<stdio.h>typedef struct //定义图结构{int n; /* 图的顶点个数*/char v[100]; /* 顶点信息*/int e[100][100]; /* 边信息*/int shor; /* 最短路径信息*/}park;park *luru(park *x){int j,k;cout<<"请输入公园景点个数"<<endl;cin>>x->n;if(x->n<=0){cout<<"个数输入错误,请重新输入"<<endl;cin>>x->n;}cout<<"请输入景点名称,每个名称只允许一个字符代替"<<endl;for(j=0;j<x->n;j++)cin>>x->v[j];cout<<"请输入景点之间的路径长度,只允许整数型数值,无路径长度的输入0"<<endl;for(j=0;j<x->n;j++)for(k=0;k<x->n;k++){cout<<"请输入第"<<j+1<<"行"<<"第"<<k+1<<"列的路径长度"<<endl;cin>>x->e[j][k];}return x;}int search(park *x){char start,end,temp;int i=0,j=0,temp_1,temp1=10000;cout<<"请输入要查找的起始景点名称"<<endl;cin>>start;while(i<x->n && start!=x->v[i])i++;if(i==x->n){cout<<"没有找到该景点,按任意键返回"<<endl;return 0;}}cout<<"请输入要查找的终点景点名称"<<endl;cin>>end;while(j<x->n && end!=x->v[j]){j++;if(j==x->n){cout<<"没有找到该景点,按任意键返回"<<endl;return 0;}}x->shor=x->e[i][j];temp_1=x->e[i][j];for (int k=0;k<x->n;k++)//两个顶点最小权值判断{if (x->e[i][k]==0||x->e[k][j]==0 )continue;if(x->shor > x->e[i][k] + x->e[k][j]){x->shor = x->e[i][k] + x->e[k][j];temp=x->v[k];}}if(x->shor==0){cout<<"这两个节点中没有连通路,按任意键返回"<<endl;return 0;}if(x->shor==temp_1){cout<<"最短路径信息: "<<start<<"->"<<end<<endl<<"最小路径长度:"<<x->shor<<endl;x->shor=10000;getchar();return 1;if(x->shor<temp_1 && x->shor<=temp1){cout<<"最短路径信息: "<<start<<"->"<<temp<<"->"<<end<<endl<<"最小路径长度:"<<x->shor<<endl;x->shor=10000;getchar();return 1;}cout<<"查找失败,按任意键返回"<<endl;getchar();return 0;}int main(){park x;int i=1;luru(&x);do{search(&x);cout<<"是否继续?"<<endl<<"1.继续"<<endl<<"0.退出"<<endl;cin>>i;}while(i!=0);return 0;}三、运行结果。

公园导航课程设计

公园导航课程设计

公园导航课程设计一、教学目标本课程旨在让学生掌握公园的基本信息和导航技巧,培养学生独立在公园中找到目的地并进行导航的能力。

具体目标如下:1.知识目标:学生能够理解公园的布局、设施以及各类导航标志的含义。

2.技能目标:学生能够运用地图和导航设备,独立完成公园内的导航任务。

3.情感态度价值观目标:培养学生对公园环境的尊重和保护意识,以及在公园中遵守公共秩序的行为习惯。

二、教学内容教学内容主要包括公园布局、导航标志识别、地图使用和导航设备操作。

具体安排如下:1.公园布局:介绍公园的基本布局,包括入口、景观区、休息区、游乐区等。

2.导航标志识别:教授学生识别公园内的各类导航标志,如指示牌、路标等。

3.地图使用:教授学生如何阅读公园地图,包括地图的比例尺、方向、图例等。

4.导航设备操作:教授学生如何使用导航设备,如手机导航、GPS设备等。

三、教学方法本课程采用讲授法、讨论法、案例分析法和实地教学法相结合的教学方法。

1.讲授法:用于教授公园布局、导航标志识别、地图使用和导航设备操作的基本知识。

2.讨论法:通过小组讨论,让学生分享在公园导航过程中的经验和问题,互相学习。

3.案例分析法:分析具体的公园导航案例,让学生学会解决实际问题。

4.实地教学法:学生到公园实地进行导航练习,提高实际操作能力。

四、教学资源教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:选用《公园导航》教材,为学生提供系统的理论知识。

2.参考书:提供相关的公园规划和设计书籍,丰富学生的知识储备。

3.多媒体资料:制作公园导航的教学视频和PPT,增强课堂教学的趣味性。

4.实验设备:配备导航设备,如手机、GPS设备等,供学生进行实地操作练习。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以全面客观地评价学生的学习成果。

1.平时表现:通过观察学生在课堂上的参与度、提问和回答问题的表现,以及小组讨论的贡献,评估学生的学习态度和理解程度。

公园导航课程设计

公园导航课程设计

公园导航课程设计一、课程目标知识目标:1. 学生能够理解并掌握地图的基本知识,如方向、比例尺、图例等。

2. 学生能够运用地理信息系统(GIS)技术,进行公园地理位置的定位和导航。

3. 学生能够了解公园的自然和人文景观特点,并将其与地图信息相结合。

技能目标:1. 学生能够运用智能手机或平板电脑等设备,熟练操作地图导航应用程序。

2. 学生能够通过实际操作,掌握在公园中快速找到目的地的方法和技巧。

3. 学生能够培养解决问题的能力,如在导航过程中遇到困难时,能够灵活调整方案。

情感态度价值观目标:1. 学生能够增强对地理学科的兴趣,认识到地理知识在实际生活中的重要性。

2. 学生能够培养合作意识,与同学共同完成公园导航任务,提高团队协作能力。

3. 学生能够增强环保意识,尊重和保护公园环境,培养绿色出行的良好习惯。

课程性质:本课程为地理学科实践活动,结合信息技术,以提高学生的实际操作能力和综合素质。

学生特点:五年级学生,具备一定的地图阅读能力,对新事物充满好奇,喜欢实践操作。

教学要求:教师应注重理论与实践相结合,引导学生主动参与,关注个体差异,提高学生的综合运用能力。

通过本课程的学习,使学生在知识、技能和情感态度价值观方面均取得具体的学习成果。

二、教学内容1. 地图基础知识:包括地图的方向、比例尺、图例等基本概念,结合课本相关章节,让学生复习和巩固地图阅读技能。

- 教材章节:《地图的认识》2. 地理信息系统(GIS)技术:介绍GIS技术在公园导航中的应用,学会使用电子地图进行定位和导航。

- 教材章节:《现代地理信息技术》3. 公园自然和人文景观特点:分析公园内的景点特色,与地图信息相结合,提高学生对地理环境的认识。

- 教材章节:《地理与生活》4. 实践操作:组织学生分组进行公园导航任务,让学生在实际操作中掌握导航技巧,提高解决问题的能力。

- 教材章节:《实践活动》5. 团队协作与环保意识:通过小组合作完成导航任务,培养学生的团队协作能力和环保意识。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学号:课程设计题目公园导游图教学院计算机学院专业计算机网络技术班级09网络技术(1)姓名指导老师冯珊、熊敬一2010 年12 月30 日课程设计任务书2009~2010学年第 1学期学生姓名:何雪梅专业班级: 09网络技术指导教师:冯姗、熊敬一工作部门:计算机学院一、课程设计题目:公园导游图二、课程设计内容给出一张某公园的导游图,游客通过终端询问可知:从某一景点到另一景点的最短路径。

游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。

三、进度安排1.初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2.完成最低要求:建立一个文件,包括5个景点情况,能完成遍历功能;3.进一步要求:进一步扩充景点数目,画出景点图,有兴趣的同学可以自己扩充系统功能。

四、基本要求1. 界面友好,函数功能要划分好2. 总体设计应画一流程图3. 程序要加必要的注释4. 要提供程序测试方案5. 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。

教研室主任签名:年月日目录摘要1 问题描述 (3)1.1图、无向图 (3)1.1.1图的存储结构 (3)1.1.2 图的邻接矩阵表示法 (3)1.2算最短路径 (4)1.3无向图遍历 (4)1.4广度优先搜索 (4)2.系统分析 (5)2.1系统流程图 (5)3 系统设计 (5)3.1主要数据结构 (6)3.2主要函数说明 (6)3.3主要算法说明 (6)3.3.1数组表示法 (6)3.3.2F LOYD算法 (6)4 心得体会 (7)附录一:源程序 (8)附录三:参考文献 (14)摘 要计算机解决一个具体问题时,大致需要经过下列几个步骤:首先要从具体问题中抽象出一个适当的数学模型,然后设计一个解此数学模型的算法(Algorithm ),最后编出程序、进行测试、调整直至得到最终解答。

寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述。

计算机算法与数据的结构密切相关,算法无不依附于具体的数据结构,数据结构直接关系到算法的选择和效率。

运算是由计算机来完成,这就要设计相应的插入、删除和修改的算法 。

也就是说,数据结构还需要给出每种结构类型所定义的各种 运算的算法。

1.问题描述1.1图的存储结构图的存储方式很多,这里用的是邻接矩阵的方式。

为了适合用C 语言描述,以下假定顶点序号从0开始,即图G 的顶点集的一般形式是V(G)={v 0 ,v i ,…,V n-1 }。

1.1.1 图的邻接矩阵表示法(1)用邻接矩阵表示顶点之间的相邻关系; (2)用一个顺序表来储存顶点信息1.1.2 图的邻接矩阵(Adacency Matrix)设G=(V ,E)是具有n 个顶点的图,则G 的邻接矩阵是具有如下性质的n 阶方阵: 若G是网络,则邻接矩阵可定义为:⎪⎩⎪⎨⎧>∈<=,其它0E(G)v ,v 或)v ,(v 若1,],[j i j i j i A1.2求最短路径给定一个带权有向图 G=(V,E) ,其中每条边的权是一个非负实数。

另外,还给定 V 中的一个顶点,称为源。

现在我们要计算从源到所有其他各顶点的最短路径长度。

这里的长度是指路上各边权之和。

这个问题通常称为单源最短路径问题。

1.2.1单源最短路径问题Dijkstra提出按各顶点与源点v间的路径长度的递增次序,生成到各顶点的最短路径的算法。

既先求出长度最短的一条最短路径,再参照它求出长度次短的一条最短路径,依次类推,直到从源点v 到其它各顶点的最短路径全部求出为止。

1.3求最小生成树对于连通的带权图(连通网)G,其生成树也是带权的。

生成树T各边的权值总和称为该树的权,记作:Te,W(u , v)TE表示T的边集w(u,v)表示边(u,v)的权。

权最小的生成树称为G的最小生成树(Minimum Spanning Tree)。

最小生成树可简记为MST。

最小生成树性质:设G=(V,E)是一个连通网络,U是顶点集V的一个真子集。

若(u,v)是G中一条“一个端点在U中(例如:u∈U),另一个端点不在U中的边(例如:v∈V-U),且(u,v)具有最小权值,则一定存在G的一棵最小生成树包括此边(u,v)。

2.系统分析2.1系统流程本系统主要是实现图的最短路径问题图2-12.2系统相关抽象数据类型2.2.1图的邻接矩阵存储结构形式说明#define MaxVertexNum l00 //最大顶点数,应由用户定义typedef char VertexType; //顶点类型应由用户定义typedef int EdgeType; //边上的权值类型应由用户定义typedef struct{VextexType vexs[MaxVertexNum] //顶点表EdeType edges[MaxVertexNum][MaxVertexNum];//邻接矩阵,可看作边表int n ,e; //图中当前的顶点数和边数}MGragh;2.2.2建立无向网络的算法void CreateMGraph(MGraph *G){//建立无向网的邻接矩阵表示int i,j,k,w;scanf("%d%d",&G->n,&G->e); //输入顶点数和边数for(i=0;in;i++) //读人顶点信息,建立顶点表G->vexs[i]=getchar();for(i=0;in;i++)for(j=0;jn;j++)G->edges[i][j]=0; //邻接矩阵初始化for(k=0;ke;k++){//读入e条边,建立邻接矩阵scanf("%d%d%d",&i,&j,&w);//输入边(v i ,v j )上的权wG->edges[i][j]=w;G->edges[j][i]=w;}}//CreateMGraph3.系统设计3.1系统功能提供无向图的生成,并保证了该无向图为一个无向网,同时也提供了计算最短距离的迪杰斯特拉算法,以及图的遍历。

3.2主要函数说明本系统用了一个类来实现程序,里面包含了4个对象,即void graph::picture();void graph::creatp(graph &t);void graph::floyd(graph &t,const int n);void graph::bfs(graph t)3.3主要算法说明3.3.1无向网的建立由于图的结构比较复杂,任意两个顶点之间都可能存在联系,因此无法以数据元素在存储区中的物理位置来表示元素之间的关系,即图没有顺序映像的存储结构,但可以借助数组的数据类型表示元素之间的关系。

另一方面,用多重链表表示图是自然的事,它是一种最简单的这式映像结构,聚聚以一个由一个数据域和多个指针域存储该顶点,其中数据域存储该顶点的信息,指针域存储指向其邻接点的指针.3.3.2数组表示法用两个数组分别存储数据元素的信息和数据元素这间的关系的信息。

以二维数组表示有N个顶点的图时,需存放N个顶点信息和N2个弧信息的存储量。

3.3.3Floyd算法Floyd算法又称为弗洛伊德算法,插点法,是一种用于寻找给定的加权图中顶点间最短路径的算法。

Floyd算法适用于APSP(All Pairs Shortest Paths),是一种动态规划算法,稠密图效果最佳,边权可正可负。

此算法简单有效,由于三重循环结构紧凑,对于稠密图,效率要高于执行|V|次Dijkstra算法。

优点:容易理解,可以算出任意两个节点之间的最短距离,代码编写简单;缺点:时间复杂度比较高,不适合计算大量数据。

4.心得体会当今世界,C语言作为国际上广泛流行的通用程序设计语言,在计算机的研究和应用中已展现出强大的生命力。

C语言兼顾了诸多高级语言的特点,是一种典型的结构化程序设计语言,它处理能力强,使用灵活方便,应用面广,具有良好的可移植性。

而数据结构-作为C语言使用的途径学科,也是计算机学科的一门核心课程.虽然我们学C语言和数据结构已快一年了,但一直都注重理论概念,而实际上机操作却不多.很感谢这次的课程设计,它使我更加深刻地体会到多看专业书、多学习专业知识的重要性,只有掌握了一定量的专业知识才能得心应手地解决诸多问题;另外,在课程设计过程中,我遇到了很多棘手的问题,好几次都差点放弃了,但最终还是坚持下来了,所以我懂得了,做任何事都要有耐心,不要一遇到困难就退缩;当遇到那么多的问题时,我自己能解决的并不多,大部分都是通过和小组同学讨论而解决的。

所以,在学习和工作中要时刻谨记“团结”二字,它好比通向成功的铺路石,不可或缺。

在编程过程中,有编得很顺利的,也有很多不顺利的,正如人生的道路是曲折的,但正是因为曲折人生才光彩夺目,在人生的路上,总遇到重重困难,但正是因为这些困难我们才变的更加坚强,才能够不断地提高自己,充实自己,最后达到我们理想的彼岸。

感谢冯老师在授课期间对我们严厉的态度和严格的管理,才造就了今天的我们。

在课程设计过程中,我们几乎每个小组都遇到了不同程度的问题,但老师都细心指导,耐心地为我们讲解。

老师认真负责的工作态度,对我们这次的课程设计得以顺利完成发挥了不可估量的作用。

最后,再一次感谢在这次课程设计中对我给予帮助的老师和同学。

通过这次课程设计,我们不光收获了知识,还收获了友谊和欢乐。

附录1 源程序#include <iostream.h>const int n=5; //n表示公园图中顶点个数const int e=7; //e表示公园图中路径bool visited[n+1];#define max 32767class graph{public:int arcs[n+1][n+1]; //领接矩阵int a[n+1][n+1]; //距离int path[n+1][n+1]; //景点void floyd(graph &t,const int n);void picture();void creatp(graph &t);void bfs(graph t);};void graph::picture() //公园图{cout<<" ******公园导游图******"<<endl;cout<<"以下是公校的景点"<<endl;cout<<" ***************************"<<endl;cout<<" * 1.公园入口 2.水族馆*"<<endl;cout<<" * 3.摩天轮 4.动物园* *"<<endl;cout<<" * 5.公园出口*"<<endl;cout<<" ***************************"<<endl;cout<<"以下是公园的路径图"<<endl;cout<<" 9 "<<endl;cout<<" 2 *---------*4 "<<endl;cout<<" | \\ /| "<<endl;cout<<" | 4\\ 5/ | "<<endl;cout<<" | \\ / | "<<endl;cout<<" 3 | \\/ | 2 "<<endl;cout<<" | * 3 | "<<endl;cout<<" | / \\ | "<<endl;cout<<" | /10 \\3| "<<endl;cout<<" 1 * / \\ * 5 "<<endl;cout<<" 入口出口"<<endl;cout<<"下面是景点与景点之间的距离和介绍:"<<endl;cout<<"1.公园入口->2.水族馆距离为:3"<<endl;cout<<"1.公园入口->3.摩天轮距离为:10"<<endl;cout<<"2.水族馆->4.动物园距离为:9"<<endl;cout<<"2.水族馆->3.摩天轮距离为:4"<<endl;cout<<"3.摩天轮->4.动物园距离为:5"<<endl;cout<<"4.动物园->5.公园出口距离为:2"<<endl;cout<<"3.摩天轮->5.公园出口距离为:3"<<endl;}void graph::creatp(graph &t){int i,j;for(i=1;i<=n;i++)for(j=1;j<=n;j++)if(i==j)t.arcs[i][j]=0; //景点一样则距离为0else t.arcs[i][j]=max; //i不等于j时t.arcs[1][2]=3;t.arcs[2][1]=3;t.arcs[2][4]=9;t.arcs[4][2]=9;t.arcs[3][1]=8;t.arcs[1][3]=8;t.arcs[3][2]=4;t.arcs[2][3]=4;t.arcs[3][4]=5;t.arcs[4][3]=5;t.arcs[3][5]=3;t.arcs[5][3]=3;t.arcs[5][4]=2;t.arcs[4][5]=2;} //把景点跟距离用一个二围数组存储下来void graph::floyd(graph &t,const int n){for(int i=1;i<=n;i++)for(int j=1;j<=n;j++){t.a[i][j]=t.arcs[i][j]; //把距离付值给a.[i][j]if((i!=j)&&(a[i][j]<max))t.path[i][j]=i;else t.path[i][j]=0;}for(int k=1;k<=n;k++){for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(t.a[i][k]+t.a[k][j]<t.a[i][j]){t.a[i][j]=t.a[i][k]+t.a[k][j];t.path[i][j]=t.path[k][j];}}}void graph::bfs(graph t) //从顶点i出发实现广度搜索搜索n {int j,i; //f,r分别为队列头,尾指针char ch;cout<<"请输入一个你想去的地方:";cin>>i;while(i<=5){if(i==1)cout<<"这里就是你要去的地方拉!!"<<endl<<endl; else{for(j=1;j<=n;j++){if(i!=j){cout<<"距离为"<<t.a[i][j]<<": ";int next=t.path[i][j];cout<<j;while(next!=i){cout<<"--"<<next;next=t.path[i][next];}cout<<"--"<<i<<endl;}}cout<<"等我推荐一条最佳路径供你返回吧(y/n):";}cin>>ch;if(ch=='y'){if(i==2) cout<<"2--3--5"<<endl;if(i==3) cout<<"3--5"<<endl;if(i==4) cout<<"4--5"<<endl;cout<<"请问你想去游览公园全景吗(y/n):"<<endl; cin>>ch;if(ch=='y')cout<<"请走1--2--3--4--5路线"<<endl;cout<<"你还想去别的地方吗?(y/n)";cin>>ch;if(ch=='y'){cout<<"请输入一个你想去的地方:";cin>>i;}if(ch!='y'){cout<<" *****退出程序*****"<<endl;cout<<" 欢迎下次再来"<<endl;break;}}else break;}}int main(){graph t;t.picture();t.creatp(t);t.floyd(t,n);t.bfs(t);}附录二:测试数据图1—1图1—2参考文献[1] 严蔚敏吴伟民著数据结构(C 语言版)清华大学出版 1999年第一版[2] 谭浩强著C程序设计清华大学出版社 1999年第二版课程设计(论文)课程设计成绩评定表姓名性别专业班级课程设计题目:课程设计答辩或质疑记录:成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字:年月日。

相关文档
最新文档