题目9设计并实现图形版的穿越迷宫问题。每次随机生成

题目9设计并实现图形版的穿越迷宫问题。每次随机生成

ID:9914144

大小:327.00 KB

页数:7页

时间:2018-05-15

题目9设计并实现图形版的穿越迷宫问题。每次随机生成_第1页
题目9设计并实现图形版的穿越迷宫问题。每次随机生成_第2页
题目9设计并实现图形版的穿越迷宫问题。每次随机生成_第3页
题目9设计并实现图形版的穿越迷宫问题。每次随机生成_第4页
题目9设计并实现图形版的穿越迷宫问题。每次随机生成_第5页
资源描述:

《题目9设计并实现图形版的穿越迷宫问题。每次随机生成》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、题目9:设计并实现图形版的穿越迷宫问题。每次随机生成迷宫,系统先计算好路径,允许玩家通过键盘上的方向键在迷宫中移动,在穿越过程中,通过对话框或其他界面提示给予玩家一定的帮助,直到成功到达迷宫出口。(2)程序实现的基本思想设计该迷宫可使用小应用程序.程序设计分为四个主要步骤:第一,设计一个迷宫数组。首先我们要生成一个方格阵图,数组中每个元素代表图中相对应的一个小方格,每个方格由上墙与右墙组成,也就是说,要生成一个迷宫,只需要拆掉每个方格的上墙或右墙就可以实现了。令每一个数组元素赋予不同的字符,主要用来标记该

2、坐标的方格是否具有上墙、右墙、边界,以及上、右墙是否皆有的四种情况。在运行程序的时候,就在各个位置上画上相应的图就可以了。第二,使用递归方法随机生成一个迷宫格数组。从数组位置始点(1,1)出发,随机选取一个方向,再沿着方向走,进入下一个方格,再随机选取一个方向再走下,直到走遍所有方格,注意的是每个方格只能走一次。设当前位置为(i,j)处的方格里,现随机选择一个方向,如果方向所指向的位置为边界或是已设置过的地方,则另外再随机选取一个方向。选定位置后,如果所指向的方向向上,则拆掉(i,j)位置处的上墙;如果方

3、向向下,则拆掉位置(i,j+1)处的上墙;如果方向向右,则拆掉(i,j)位置处的右墙;如果方向向左,则拆掉位置(i-1,j)处的右墙。就这样,直到所有的位置都设置过。第三,设计行走过程中方向提示的方法。使用递归方法实现此设计。设当前位置在(i,j)处,首先向各方向路径进行搜索;如果目标找到,则停止向其他方向搜索。否则则继续沿其他路径搜索,直到搜索到终点(n,n)为止。最后系统会根据由当前位置通往终点的路径给出路径方向提示。第四,设计让小机械猫自动走出迷宫。设小机械猫的当前位置为(i,j),则系统通过调用方

4、向提示的办法明确路径方向,再移动小机械猫,逐步走出迷宫。6(3)程序的UML图<>KeyListenerJApplet<>ActionListenerMi按钮监听器#加,减,产生迷宫,提示,演示,停止:Button#标记:char[][]#监听器:按钮监听器#timer:Timer#grass、people、grassUP、grassRight:Image#grassFloor、offScreen:Image#label:Label;#panel:Panel#m

5、ark:int[][]+actionPerformed(event:ActionEvent):void+init():void+paint(g:Graphics):void-生成迷宫():void-genmaze(i:int,j:int):void+画出迷宫(page:Graphics):void+keyTyped(e:KeyEvent):void+keyReleased(e:KeyEvent):void+keyPressed(e:KeyEvent):void+update(g:Graphics):voi

6、d-向右():boolean-向上():boolean-向左():boolean-向下():boolean-画出人(page:Graphics):void-find(i:int,j:int):void-提示方向(page:Graphics):void+调整(page:Graphics):void<>ActionListenerListen演示+actionPerformed(event:ActionEvent):void6(4)系统流程开始生成JApplet图形界面初始生成迷宫方向提

7、示按钮键盘按键控制级数按钮组自动穿越迷宫按钮组在图中显示箭头控制机械猫移动停止按钮自动按钮产生迷宫按钮增减按钮启用或停止机械猫自动行走,根据标签的级数值生成迷宫退出系统修改标签的级数值结束(5)运行结果及分析61、运行程序图(1)由上图可以看到左上角显示出关数,而右边的面板上有6个按钮,1个标签,标签用于显示关数,六个按钮分别分成三组,第一组:“增加关数”、“减小关数”、“生成迷宫”;第二组:“方向提示”;第三组:“自动行走”、“行走停止”。其中第一组中,一定先设定好关数,才“生成迷宫”。2、进入游戏程序

8、通过按键“”、“”、“”、“”来移动小机械猫,当发生迷路时,可通过“方向提示”按钮进行提示,其中图中红色箭头的指向为通往终点的路径方向。此外还可以通过“自动行走”按钮使小机械猫自动走出迷宫。如果需要还可以“生成迷宫”按钮生成同样级别的迷宫,使同样级别的迷宫多样化。(见图(2))6图(2)图(3)6当玩家成功走出迷宫,即走出右下角的通道时,系统就会使关数值自动升级,难度增大,同时也使机械猫恢复到始点位置。例如,在图(3)中,当完

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。