天天看點

Problem C: 字元構成的圖形

Problem C: 字元構成的圖形

Description

定義CharGraph類,用于輸出一個由指定字元組成的圖形。該類包括:

1. 一個int類型資料成員,表示該圖形的層數。

2. 一個char類型的資料成員,表示組成該圖的字元。

3. void print()方法,用于根據指定格式輸出字元圖形。

Input

第1行N>0,表示有N個測試用例。

每個測試用例的輸入由一個非負整數和一個字元組成。

Output

每個測試用例産生一組輸出。

當指定的層數為0時,輸出一個空行。

當指定的層數為正數時,輸出每層字元個數自上到下依次遞增且靠左對齊的直角三角形。

#include <iostream>

using namespace std;

class CharGraph {
private:
    int n;
    char c;
public :
    CharGraph(int nn, char cc) : n(nn), c(cc) {}
    void print() {
        if (n == 0) cout << endl;
        else if (n > 0) {
            for (int i = 0; i < n; i++) {
                for (int j = 0; j <= i; j++) {
                    cout << c;
                }
                cout << endl;
            }
        }
        else {
            n = -n;
            for (int i = 0; i < n; i++) {
                for (int j = 0; j < n - i; j++) {
                    cout << c;
                }
                cout << endl;
            }
        }
    }
};

int main()
{
    int cases, n;
    char c;
    cin>>cases;
    for (int i = 0; i < cases; i++)
    {
        cin>>n>>c;
        CharGraph cGraph(n, c);
        cGraph.print();
    }
    return 0;
}