解决平方矩阵问题

问题

输入整数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;
}

其中,观察到一个规律,mij的值为|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;
}
相关推荐
luj_17682 小时前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法
广州山泉婚姻2 小时前
C/C++动态内存:堆内存的申请、使用与释放
c++·人工智能
Wang's Blog2 小时前
Java框架快速入门: Spring Security+OAuth2之字段验证与自定义验证注解实战
java·算法·spring
带多刺的玫瑰2 小时前
Leecode#29刷题之两数相除
java·python·算法
smj2302_796826522 小时前
解决leetcode第4017题数组中的峰值II
python·算法·leetcode
午彦琳2 小时前
2026.9.9
数据结构·算法·leetcode
luj_17682 小时前
中锋卡位与开放线博弈
c语言·开发语言·网络·经验分享·算法
Jackson_GJH2 小时前
日志_图解spdlog
开发语言·c++
洋不写bug2 小时前
二叉树(四)经典算法题目解析,公共祖先,二叉树构造,非递归遍历
数据库·算法·二叉树·二叉树构造·公共祖先
hansang_IR3 小时前
【题解】P4454 [CQOI2018] 破解D-H协议
c++·算法·密码学·数论