zoukankan      html  css  js  c++  java
  • 在屏幕上打印N*N方阵的副上三角阵

        题目:编程打印形如下面图形的n*n方阵的副上三角阵
        1 3 6 10 15
        2 5 9 14
        4 8 13
        7 12
        11
        (算法设计与分析P108第4题)
        设计思路:仔细观察发现每一行的每个元素比它上一行的对应元素的下一个要小一,故考虑用一个整型向量容器来放置元素,然后每次对元素从下标较大的做起逐个加1,每次比上次少加一个元素,并且少输出一个下标最小的那个元素。
        源程序代码:
    #include<iostream>
    #include<iomanip>
    #include<vector>
    using namespace std;

    int main()
    {
    int n=2;
    int q;
    cin>>q;
    vector<int> a(q,0);
    a[0]=1;
    int p=0;
    for(int i=1;i!=q;++i)
    {
    a[i]=a[i-1]+n;
    ++n;
    }
    for(int j=0;j!=q;++j)
    {
    for(int m=p;m!=q;++m)
    {
    cout<<setw(4)<<a[m];
    a[m]=a[m]-1;
    }
    cout<<endl;
    ++p;
    }
    }
  • 相关阅读:
    nconf修改密码
    快速清空一个文
    freebsd安装snmp
    -bash: mail: command not found
    重置Cacti密码
    cacti添加被监控机全过程
    cacti图形字符乱码
    博客链接
    tar命令详解
    MainPresenter 实现类
  • 原文地址:https://www.cnblogs.com/mazhuang/p/1641657.html
Copyright © 2011-2022 走看看