import java.util.Scanner;
public class Test4
{
int date[][]=null;
public static void main(String[] args)
{
Test4 test=new Test4();
int n=test.getInput();//获取一个数
test.createArray(n);//分配内存
test.Caozuo(n);//计算
test.Output(n);//输出
}
public int getInput()
{
Scanner s=new Scanner(System.in);
return s.nextInt();//获取一个数
}
public void createArray(int n)
{
date=new int[n][];
for(int i=0;i<n;i++)//输入
{
date[i]=new int[n-i];
}
}
public void Output(int n)
{
for(int i=0;i<n;i++)//输出
{
for(int j=0;j<date[i].length;j++)
{
System.out.print(date[i][j]+"\t");
}
System.out.println();
}
}
public void Caozuo(int n)
{
int number=1;
int xunhuan=n/3+1;//暂时不知到xunhuan取值为什么最好,按规律设置的
for(int m=0;m<xunhuan;m++)
{
for(int i=m;i<n-2*m;i++)//横向
{
date[m][i]=number;
number++;
}
for(int i=1+m;i<n-2*m;i++)//斜向
{
date[i][n-i-1-m]=number;
number++;
}
for(int i=n-2-2*m;i>m;i--)//竖向
{
date[i][m]=number;
number++;
}
}
}
}
|