java程序 回形数,java 回形数存储

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

下面是模拟的代码:

package rqnoj;

public class PID7 {

/**

* @param args

*/

public static int[][] a=new int[7][7];

public static int index=0;

public static void main(String[] args) {

dy(0, 0, 1);

for(int i=0;i

for(int j=0;j

System.out.print(a[i][j]+" \t");

}

System.out.println();

}

}

public static boolean isyuejie(int i,int j){

if(i<0||j<0) return false;

if(i==a.length||j==a[0].length) return false;

if(a[i][j]!=0) return false;

return true;

}

public static void dy(int i, int j,int k){

System.out.println("i:"+i+"j:"+j);

if(index==49) return ;

a[i][j]= ++index;

switch (k) {

case 1:

if(!isyuejie(i, j+1)){

i=i+1;

k=2;

dy(i, j, k);

}else{

dy(i, j+1, k);

}

break;

case 2:

if(!isyuejie(i+1, j)){

j=j-1;

k=3;

dy(i, j, k);

}else{

dy(i+1, j, k);

}

break;

case 3:

if(!isyuejie(i, j-1)){

i=i-1;

k=4;

dy(i, j, k);

}else{

dy(i, j-1, k);

}

break;

case 4:

if(!isyuejie(i-1, j)){

j=j+1;

k=1;

dy(i, j, k);

}else{

dy(i-1, j, k);

}

break;

default:

break;

}

}

}

0818b9ca8b590ca3270a3433284dd417.png

你可能感兴趣的:(java程序,回形数)