WEB开发网
开发学院图形图像Flash [AS 功能代码教程02]数字魔方及数组 阅读

[AS 功能代码教程02]数字魔方及数组

 2009-05-30 12:07:37 来源:WEB开发网   
核心提示:数字魔方(经典数据结构实例):1.本游戏的玩法,均在本FLASH中一一介绍了,[AS 功能代码教程02]数字魔方及数组,博客中不再重复:下载地址:http://www.flashempire.com/myfe/upload/flash/142/1410014_1195878655.swf2.编程序的基本原则就是这个游戏

数字魔方(经典数据结构实例):

1.本游戏的玩法,均在本FLASH中一一介绍了,博客中不再重复:

下载地址:

http://www.flashempire.com/myfe/upload/flash/142/1410014_1195878655.swf

2.编程序的基本原则就是这个游戏玩法的原则即:

1)第一行中间是1;

2)向右1格;向上1格;

3)上边出界,去下边;

4)右边出界,去左边;

5) 没数占着,就填数;

6)有数占着,坐屁股下。

3.下面是矩阵计算的程序:

var n:Number = 5;
//矩阵的行列数为n*n;
var matrix:Array = new Array();
//因为AS中不能直接调用二维数组,所以我们先申请一个二维数组,并进行初始化

for (var i = 0; i < n; i++) {
 matrix[i] = new Array();
 for (var j = 0; j < n; j++) {
  matrix[i][j] = 0;

  }
}
var movei:Number = 0;
var movej:Number = int(n/2);
matrix[movei][movej] = 1;
//这里完成了总体原则的第一步[第一行中间是1];
var counter:Number = 2;
//计数器,准备放入下一个数2
for (i=0; i < n; i++) {
 for (j=0; j < n; j++) {
  tempi = movei--;
  tempj = movej++;
  //总体原则第2步[向右1格;向上1格]
  if (movei < 0) {
   movei = n-1;
   //总体原则第3步[上边出界,去下边]
  }
  if (movej > n-1) {
   movej = 0;
   //总体原则第4步[右边出界,去左边]
  }
  if (matrix[movei][movej] == 0) {
   matrix[movei][movej] = counter++;
   //总体原则第5步[没数占着,就填数]
  } else {
   movei = tempi+1;
   movej = tempj;
   matrix[movei][movej] = counter++;
   //总体原则第6步[有数占着,坐屁股下]
  }
 }
}
//------------最后输出矩阵看看一看--------------
for (i=0; i < n; i++) {
 trace(matrix[i]);
}

1 2 3  下一页

Tags:AS 功能 代码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接