平方矩阵 II
找规律 C++ 代码
下标为(i,i)的数字恒为1呈现斜对角线,可以看出(同一行内)1左右两边的数字与它相差多少列,它的值就是差值加1.假设两个数字在同一行内x1,y1,x2,y2,已知某一行数字1的下标为(x1,y1)那么这一行的任意一个数字的值为 abs(y1-y2)+1
#include<iostream>
#include<math.h>
using namespace std;
const int N =1010;
int a[N][N];
int main(void)
{
int n;
while(cin>>n,n)
{
for(int i = 0;i < n;i++)
{
for(int j = 0;j < n;j++)
{
cout<<abs(j-i)+1<<" ";
}
cout<<endl;
}
cout<<endl;
}
return 0;
}