解决平方矩阵问题

问题

输入整数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;
}
相关推荐
Roann_seo%11 小时前
C++文件操作完全指南:从文本读写到二进制文件处理
开发语言·c++
坚果派·白晓明12 小时前
【鸿蒙PC】SDL3 适配:AtomCode + Skills 快速集成 NAPI 测试工具
c++·华为·ai编程·harmonyos·atomcode
云絮.12 小时前
数据库操作
数据库·mysql·算法·oracle
小林ixn13 小时前
LeetCode 206. 反转链表(迭代 + 递归详解)
算法·leetcode·链表
凡人叶枫13 小时前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
凡人叶枫14 小时前
Effective C++ 条款16:成对使用 new 和 delete 时要采取相同形式
开发语言·c++·effective c++
菜鸟‍14 小时前
LeetCode 1 27 和 704 || 两数之和 移除元素 二分查找
算法·leetcode·职场和发展
不吃土豆的马铃薯14 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++
.千余15 小时前
【C++】C++继承入门(下):友元、静态成员与菱形继承的底层逻辑
开发语言·c++·笔记·学习·其他
初中就开始混世的大魔王15 小时前
6 Fast DDS-传输层
开发语言·c++·中间件·信息与通信