本文目录一览

1,数字九宫格

1 6 -10 2 45 -2 3
要使得每行数字组成的十进制数平方根为整数,并且1-9中只有1,4,9三个数字的算术平方根为整数,把这三个数字放在九宫格中中间那一列
取中位数即2,放在九宫格中间,然后让每一边剩下两个之和都为6,然后取1-9的九宫格每个都减去3就可以

数字九宫格

2,9宫格 java程序

public class TestJiuGongTu { public TestJiuGongTu(){} public void buildPicture(int n){ if(n%2==0){//偶数行的不行,返回 System.out.println("行数只能为奇数"); return; } int[][] r = new int[n][n];//2元数组 int i=1;//起始数为1 int b1 = 0;//起始数的行 int b2 = n/2;//起始数的列 while(i<=n*n){ if(b1-n+1>0)//超过最下行,变为第一行 b1 = b1-n; if(b2-n+1>0)//超过最右列,变为第一列 b2 = b2-n; if(b1<0)//减的时候小于第一行,小几行用总行数减几行 b1 = n+b1; if(b2<0)//减的时候小于第一列,小几列用总列数减几列 b2 = n+b2; if(i==1){//第一个数在最下行,中间那列。 r[b1][b2] = i; } else if(r[b1][b2]>=1){//如果有数,则行+1,列-2 b1 = b1+2; b2 = b2-1; continue; }else{ r[b1][b2] = i;//赋值 } b1--;//行-1 b2++;//列+1 i++;//数加1 } print(r); } //打印2元数组 public void print(int[][] r){ for(int i = 0;i<r.length;i++){ for(int j=0;j<r[i].length;j++) System.out.print(r[i][j]+" "); System.out.println(); } } public static void main(String[] args){ TestJiuGongTu tjgt = new TestJiuGongTu(); tjgt.buildPicture(3); } } 以前写过那种的。。改改应该可以了。。

9宫格 java程序


文章TAG:数字  九宫  九宫格  9宫格  
下一篇