import java.util.*;
public class Majic{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[][] table=new int[n][n];
int i=0;
int j=n/2;
for(int k=1;k<=n*n;k++){
table[i][j]=k;
if(k%n==0){
i=(i+1)%n;
}else{
i=(i-1+n)%n;
j=(j+1+n)%n;
}
}
for(int x=0; x<table.length; x++){
for(int y=0;y<table[i].length;y++){
System.out.print(table[x][y]+" ");
}
System.out.println();
}
}
}
public class Majic{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[][] table=new int[n][n];
int i=0;
int j=n/2;
for(int k=1;k<=n*n;k++){
table[i][j]=k;
if(k%n==0){
i=(i+1)%n;
}else{
i=(i-1+n)%n;
j=(j+1+n)%n;
}
}
for(int x=0; x<table.length; x++){
for(int y=0;y<table[i].length;y++){
System.out.print(table[x][y]+" ");
}
System.out.println();
}
}
}
本文介绍了一个使用Java编写的简单程序,该程序可以生成任意大小的魔术方阵。魔术方阵是一种n×n的矩阵,其中每行、每列及两条对角线上的数字之和都相等。代码通过特定的算法确保了每个单元格填充不同的数字,并按矩阵形式打印输出。
1265

被折叠的 条评论
为什么被折叠?



