拉丁矩阵

来源:互联网 发布:windows embedded 10 编辑:程序博客网 时间:2024/04/28 19:01
拉丁方阵 
要求:实现任意阶拉丁矩阵的存储和输出 
拉丁矩阵是一种规则的数值序列,例如4阶的拉丁矩阵如下所示: 1  2  3  4 2  3  4  1 3  4  1  2 4  1  2  3 
实现思路:声明一个变量n,代表矩阵的阶,声明和初始化一个n*n的数组,根据数据的规律,则对应的数值为(行号 + 列号 + 1),当数值比n大时,取和n的余数。 实现的代码如下:  
public class ladingjuzhen { 
 public static void main(String[] args)  { 
  int n = 6; 
  int[][] arr = new int[n][n]; 
  int data;//数值   //循环赋值 
  for(int row = 0;row < arr.length;row++)   { 
   for(int col = 0;col < arr[row].length;col++)    { 
    data = row + col + 1;     if(data <= n)     { 
     arr[row][col] = data;     }     else     { 
     arr[row][col] = data % n;     }    }   } 
  //输出数组的值 
  for(int row = 0;row < arr.length;row++)   { 
   for(int col = 0;col < arr[row].length;col++)    { 
    System.out.print(arr[row][col]);     System.out.print(' ');    } 
   System.out.println();  
 













 } }  
运行结果: 
1 2 3 4 5 6  2 3 4 5 6 1  3 4 5 6 1 2  4 5 6 1 2 3  5 6 1 2 3 4  6 1 2 3 4 5   
该代码中变量data存储行号+列号+1的值,每次在赋值时判别data的值是否小于等于n,根据判断的结果赋值对应数组元素的值