当前位置:首页 » 操作系统 » js迷宫源码

js迷宫源码

发布时间: 2022-03-04 03:21:04

㈠ 迷宫问题的求解源代码

typedef struct{

int Col,Row;//迷宫的大小

int arr[Rangle][Rangle]; //0表示障碍,1表示是可走的通道,-1表示外界的围墙

}MazeType;

void InitMaze(MazeType
&M,int col,int row)

{

//按照用户的输入的行数row和列数col列的二维数组(元素值为1或0)

//设置迷宫的初值,加上边缘的一圈的值

}

void PrintMaze(MazeType M)

{

//根据已经进行二维数组的标记值来输出迷宫(或者其通路)

}

bool Pass(MazeType M,PosType pos)

{//求解迷宫M中,从Start到end的一条路径

//若存在则返回true,否则返回false

Stack S;

InitStack(S);

PosType curpos=start;//设置当前坐标为入口位置;

int curstep=1;
//当前的步数

bool Find=false;
//是否找到出口

ElemType e;

do{

if(Pass(M,curpos))

{

FootPrint(M,curpos);//在当前位置标记为2

e.step=1;

e.seat=curpos;

e.di=1;//初始化为向右边位置移动

Push(S,e);

if(curpos.c==end.c&&curpos.r==end.r)//如果找到了出口则终止,并返回true

{

Find=true;

return Find;

}

else{

curpos=NextPos(curpos,1);

curstep++;

}

}

else{//当前位置不能通过

if(!StackEmpty(S)){

Pop(S,e);//将已经走过的最近位置弹出,数据保存在e中

while(e.di==4&&!(StackEmpty(S))){

MarkPrint(M,e.seat);//留下不能通过的标记

Pop(S,e);

curstep--;

}//while

if(e.di<4)//不能通过则改变方向

{

e.di++;//方向顺时针改变一下

Push(S,e);

curpos = NextPos(e.seat,e.di); //求下一个节点

}

}

}

}while(!StackEmpty(S)&&!Find);

//(!StackEmpty(S)&&!Find);//当栈不为空且没有找到出口

return
false;//没有找到出口则返回false

㈡ 用JS编写迷宫类小游戏

你知道这个啥级别么?
看看google的pacman吧,吃豆子,跟迷宫相差不是非常大吧,人家设计师可是世界顶级的JS程序员

㈢ 一个数据结构的迷宫的源代码问题

很简单,这是一个回溯的搜索,

if(maze[x+move[i].x][y+move[i].y]==0)
if(path(maze,move,x+move[i].x,y+move[i].y,step))
这两句的意思是说如果迷宫的maze[x+move[i].x][y+move[i].y]这个位置可以走,那么下一次就从这个位置开始。
step--;
maze[x][y]=0;
这两句是在选择的路径是死路的时候用来撤销标记,返回出发点的语句

㈣ JS做迷宫,方块移动不了,求找出问题

<!DOCTYPEHTML>
<html>
<head>
<metacharset=UTF-8/>
<title>YuGiOh</title>
<styletype="text/css">
#wrap{
margin:auto;
position:relative;
width:80%;
}
</style>
<scripttype="text/javascript">
onload=function()
{
vara=newArray([
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
],[
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
]);
varrandX=Math.floor(Math.random()*a.length),randY=Math.floor(Math.random()*a[randX].length);
a[randX][randY]=0;
for(vari=0;i<a.length;i++)
{
vararray=[];
for(varj=0;j<a[i].length;j++)
{
varaa=document.createElement("div");
aa.style.position="absolute";
aa.style.border='1pxsolidblack';
aa.style.width=W+"px";
aa.style.height=H+"px";
aa.style.left=j*W+"px";
aa.style.top=i*H+"px";
if(a[i][j]==0)
{
aa.style.backgroundColor='#ff0000';
X=i;
Y=j;
}
else
{
aa.style.backgroundColor='green';
}
wrap.appendChild(aa);
array.push(aa);
}
SITE.push(array);
}
}

varexchange=function(dir)
{
vartx=X,ty=Y,d;
if(dir==37)
{
if(Y<1)
{
return;
}
else
{
ty--;
d='left';
}
}
elseif(dir==38)
{
if(X<1)
{
return;
}
else
{
tx--;
d='top';
}
}
elseif(dir==39)
{
if(Y>SITE[X].length-2)
{
return;
}
else
{
ty++;
d='left';
}
}
elseif(dir==40)
{
if(X>SITE.length-2)
{
return;
}
else
{
tx++;
d='top';
}
}
varthat=SITE[tx][ty];
varme=SITE[X][Y];
varsd=that.style[d];
that.style[d]=me.style[d];
me.style[d]=sd;
vartmp=SITE[tx][ty];
SITE[tx][ty]=SITE[X][Y];
SITE[X][Y]=tmp;
X=tx;
Y=ty;
}

varW=50,H=50,X=-1,Y=-1,SITE=[];
document.onkeydown=function(e)
{
e=e||window.event;
varkeyCode=e.keyCode;
if(!/^(37|38|39|40)$/.test(keyCode))
{
returnfalse;
}
exchange(keyCode);
};

document.ondragstart=document.onselectstart=document.oncontextmenu=function()
{
returnfalse;
}
</script>
</head>
<body>
<divid="wrap"></div>
</body>
</html>

㈤ 求一个Java的迷宫游戏代码!!!!

Java走迷宫的源代码,能运行就行已经上传附件楼主可以在附件下载

手机是看不到附件的可以电脑直接下载。

如果尤文记得采纳哦!!!

㈥ 求编程高手给个JS迷宫的代码。

以下是我作的迷宫:
我作的只有九格的,不过你可以自己改制成任意多格的迷宫.前提是一定要是用我的6个css样式来布局迷宫.否则会出错.核心的javascript我已经测试过了.没有问题
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<style>
.rb{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-top-width:1px;
}
.rt{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-bottom-width:1px;
}
.lb{
border-style:double;
border-width:0px;
border-color:#000000;
border-right-width:1px;
border-top-width:1px;
}
.lt
{
border-style:double;
border-width:0px;
border-color:#000000;
border-right-width:1px;
border-bottom-width:1px;
}
.lr{
border-style:double;
border-width:0px;
border-color:#000000;
border-top-width:1px;
border-bottom-width:1px;
}
.tb
{
border-style:double;
border-width:0px;
border-color:#000000;
border-left-width:1px;
border-right-width:1px;
}
</style>
</head>

<body>
<div id="layer1" style="position:absolute; left:15px; top:21px; width:27px; height:29px; z-index:1; background-color: #FF0000; layer-background-color: #FF0000; border: 1px none #000000;"></div>
<table width="120" height="120" border="0" cellpadding="0" cellspacing="0" style="border-color:#000000; border-width:1px; border-style:solid; ">
<tr>
<td class="rb"></td>
<td class="rb"></td>
<td class="lb"></td>
</tr>
<tr>
<td class="tb"></td>
<td class="rt"></td>
<td class="lb"></td>
</tr>
<tr>
<td class="rt"></td>
<td class="lr"></td>
<td class="lt"></td>
</tr>
</table>
<script language="javascript">
//得用css来布局迷宫,迷宫的多少行多少列,只要改下面的数据就可以了.不过表格的单元格一定要是40*40
var col=3;//列数
var row=3;//行数
var i=0;//位置数
var player=document.getElementById("layer1");
var td=document.getElementsByTagName("table")[0].getElementsByTagName("td");
document.onkeydown=function (e)
{
e=window.event||e;
if(e.keyCode==37)//向下运动
{
if(i%col!=0)//不在最左边
{
if((td[i].className=="lb"||td[i].className=="lt"||td[i].className=="lr")&&(td[i-1].className=="rb"||td[i-1].className=="rt"||td[i-1].className=="lr"))//可以通过
{
player.style.left=parseInt(player.style.left)-40+"px";
i=i-1;
}
}
}//向左运动
else if(e.keyCode==38)//向上运动
{
if(i>=col)//不在最上边
{
if((td[i].className=="lt"||td[i].className=="rt"||td[i].className=="tb")&&(td[i-col].className=="tb"||td[i-col].className=="rb"||td[i-col].className=="lb"))//可以通过
{
player.style.top=parseInt(player.style.top)-40+"px";
i=i-col;
}
}
}//向上运动
else if(e.keyCode==39)//向右运动
{
if((i%col)!=(col-1))//不在最右边
{
if((td[i].className=="lr"||td[i].className=="rt"||td[i].className=="rb")&&(td[i+1].className=="lb"||td[i+1].className=="lt"||td[i+1].className=="lr"))//可以通过
{
player.style.left=parseInt(player.style.left)+40+"px";
i=i+1;
}
}
}//向右运动
else if(e.keyCode==40)//向下运动
{
if(i<=col*(row-1))//不在最下边
{
if((td[i].className=="lb"||td[i].className=="rb"||td[i].className=="tb")&&(td[i+col].className=="tb"||td[i+col].className=="rt"||td[i+col].className=="lt"))//可以通过
{
player.style.top=parseInt(player.style.top)+40+"px";
i=i+col;
}
}
}//向下运动
}
</script>
</body></html>

㈦ js源码在哪里看

javascript的源码 被嵌入到浏览器中一般是看不到的
如果是javascript语言写的代码,可以在页面上右键--》 查看源码,在head部分找到引入的javascript文件的路径,然后再浏览器当前页面的网址 加上该文件的路径,就可以查看了

㈧ C++课程设计迷宫旅行游戏源码,拜托了!大神们!救急啊!!!

http://blog.csdn.net/qq844352155/article/details/25209133
给你个参考

㈨ 求个迷宫游戏源代码,要带解释的,希望带上如何执行,怎样用java来实现

你有个100分的悬赏我会考虑下。。。
而且你说的这个,真的不会太难。。。

㈩ 怎么看原生js函数的实现源代码

JS和Java一样,不是某一个公司的语言,而是有一个规范,任何公司和组织按规范来就行,每个浏览器都可以实现自己的JS引擎。
firefox是开源的,去看firefox的实现吧。
Java也有JS引擎。

热点内容
删数据库事件 发布:2024-11-15 12:10:54 浏览:455
数据库选课管理系统 发布:2024-11-15 12:10:15 浏览:126
android音乐波形图 发布:2024-11-15 11:57:12 浏览:378
福建社保银行卡初始密码是多少 发布:2024-11-15 11:47:40 浏览:911
游戏多开用什么配置 发布:2024-11-15 11:46:51 浏览:729
管理java版本 发布:2024-11-15 11:44:03 浏览:629
ndk编译的程序如何执行 发布:2024-11-15 11:43:18 浏览:626
轻应用服务器适合搭建网站吗 发布:2024-11-15 11:36:08 浏览:246
c语言的百分号 发布:2024-11-15 11:34:24 浏览:31
一加五安卓8什么时候推送 发布:2024-11-15 11:19:40 浏览:854