今天在论坛看见一帖子,感觉很好玩。
帖子如下:
请各位帮忙实现输入如下矩阵代码:
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
实现代码如下:
public class Show{
public static void main(String[] args) {
int n=4;//方阵大小
int[][] data = new int[n][n];
int dire; //当前数字的移动方向
final int UPRIGHT = 0; //上右
final int DOWN = 1; // 下
final int LEFTDOWN= 2; //左下
final int RIGHT = 3;// 右
dire = RIGHT;//第一次向右移动
int value = 1; //数组元素的值
int row = 0; //第一维下标
int col = 0; //第二维下标
data[0][0] = 1; //初始化第一个元素
data[n-1][n-1] = n*n;
while(value < n * n-1){
switch(dire){
case DOWN:
row++; //移动到下一行
if(row>=n){ //超过边界
row--; //后退
dire = RIGHT;