解决平方矩阵问题

问题

输入整数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;
}
相关推荐
Navigator_Z4 小时前
LeetCode //C - 1089. Duplicate Zeros
c语言·算法·leetcode
cany10005 小时前
C++ -- 可变参数模板
c++
不会C语言的男孩6 小时前
C++ Primer 第2章:变量和基本类型
开发语言·c++
云泽8087 小时前
C++ 可调用对象通关指南:深度解析 Lambda 表达式、function 包装器与 bind 绑定器
开发语言·c++·算法
wlsh157 小时前
Go 迭代器
算法
Tri_Function8 小时前
简单图论大学习
c++
语戚8 小时前
力扣 3161. 块放置查询:线段树解法(Java 实现)
java·算法·leetcode·面试·线段树·力扣·
lqqjuly8 小时前
C++ 完整知识体系—从基础语法到现代 C++23 的系统性总结
c++·c++23
luweis8 小时前
企智孪生 ETA(3.3 认知算法层:ETA 的思维内核 3.4 基础架构:算力与弹性)【浙江联保网络 卢伟舜】
大数据·运维·线性代数·ai·矩阵·学习方法
CS创新实验室9 小时前
从顺序表到动态数组:数据结构的永恒基石与现代语言的优雅封装
数据结构·算法