解决平方矩阵问题

问题

输入整数N,输出一个N阶的二维数组。

数组的形式参照样例。

输入格式

输入包含多行,每行包含一个整数N。

当输入行为N=0时,表示输入结束,且该行无需作任何处理。

输出格式

对于每个输入整数N,输出一个满足要求的N阶二维数组。

每个数组占N行,每行包含N个用空格隔开的整数。

每个数组输出完毕后,输出一个空行。

解题思路

先进行整数n的输入,并进行n次循环,再进行两次n次循环,来遍历n方矩阵

cpp 复制代码
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
    int n;
    while(cin >> n,n){
        for(int i = 0;i < n;i++){
            for(int j = 0;j < n;j++){
                
            }        
            cout << endl;
        }
        cout << endl;
    }
    return 0;
}

其中,观察到一个规律,m[i][j]的值为|i-j|+1,将每个位置都填充进入,并在其后加入空格,并在每次循环后进行换行操作

cpp 复制代码
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
    int n,a;
    while(cin >> n,n){
        for(int i = 0;i < n;i++){
            for(int j = 0;j < n;j++){
                a = abs(i - j) + 1;
                cout << a << " ";
            }        
            cout << endl;
        }
        cout << endl;
    }
    return 0;
}
相关推荐
ytttr87314 小时前
MATLAB基于LDA的人脸识别算法实现(ORL数据库)
数据库·算法·matlab
_MyFavorite_14 小时前
cl报错+安装 Microsoft Visual C++ Build Tools
开发语言·c++·microsoft
charlie11451419114 小时前
现代嵌入式C++教程:C++98——从C向C++的演化(2)
c语言·开发语言·c++·学习·嵌入式·教程·现代c++
zmzb010314 小时前
C++课后习题训练记录Day55
开发语言·c++
李白同学14 小时前
C++:继承
开发语言·c++
k***921614 小时前
【C++】STL详解(九)—priority_queue的使用与模拟实现
开发语言·c++
Hard but lovely15 小时前
C++11: 自定义异常&&标准异常体系&&回顾c异常处理方式
开发语言·c++
jianfeng_zhu15 小时前
整数数组匹配
数据结构·c++·算法
Chrikk15 小时前
现代化 C++ 工程构建:CMake 与包管理器的依赖治理
开发语言·c++
ozyzo15 小时前
例题
c++