[AS 功能代码教程02]数字魔方及数组
2009-05-30 12:07:37 来源:WEB开发网数字魔方(经典数据结构实例):
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]);
}
- ››asp.net页面弄成伪静态页面
- ››Asp.net 中将汉字转换成拼音的方法
- ››ASP.NET及JS中的cookie基本用法
- ››ASP.NET获取MS SQL Server安装实例
- ››asp.net实现调用百度pai 在线翻译英文转中文
- ››ASP.NET页面选项进行提示判断
- ››Asp.net定时执行程序
- ››ASP.NET中利用DataList实现图片无缝滚动
- ››ASP.NET验证控件RequiredFieldValidator
- ››ASP.NET中使用System.Net.Mail发邮件
- ››ASP.NET中获取用户控件中控件的ID
- ››ASP.NET中FileBytes写成文件并存档
更多精彩
赞助商链接