C++12. 魔方阵

  1. 魔方阵
    【问题描述】输入一个自然数N(1<=N<=9),要求输出如下的魔方阵,即边长为2*N-1,N在中心出现一次,其余位置上的数字从外向中心逐渐增大。
    N=3时:
    11111
    12221
    12321
    12221
    11111
    N=4时:
    1111111
    1222221
    1233321
    1234321
    1233321
    1222221
    1111111
    【输入形式】从标准输入读取一个整数N。
    【输出形式】向标准输出打印结果。输出符合要求的方阵,每个数字占一个字符宽度,在每一行末均输出一个回车符。
    【输入样例】3
    【输出样例】
    11111
    12221
    12321
    12221
    11111
    【样例说明】输入自然数3,则输出边长为5的方阵,3在方阵的中间出现一次,其余位置上的数字从外向中心逐渐增大。
#include<iostream>
using namespace std;
int a[20][20];
int main(){
	int n,min;cin>>n;
	for(int i=1;i<=2*n-1;i++){
		for(int j=1;j<=2*n-1;j++){
		if(abs(i-n)>abs(j-n))a[i][j]=n-abs(i-n);
		else a[i][j]=n-abs(j-n);
		
		}
	}
	for(int i=1;i<=2*n-1;i++){
		for(int j=1;j<=2*n-1;j++)
		cout<<a[i][j];
		cout<<endl;
	} 
}
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页