使用嵌套的for循环向上和向下计数

Using a nested for loop to count up and down

本文关键字:循环 嵌套 for      更新时间:2023-10-16

我可以制作一个计数器,它向上,但向下呢?总的来说,我希望它像这样:

1
12
123
1234
12345
12345
1234
123
12
1

你上面的代码就是我想要的最终结果。但我似乎无法让嵌套的for循环用于倒计时。

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int row, col;
    int size;
    int mych;
    int printch = 1;
    cout << "Size of Shapes (>0) ";
    cin >> size;
    while (size<0)
    {   
        cout << "nSize of Shapes (>0) ";
        cin >> size;
    }
    cout << "Characters to use: ";
    cin >> mych;
    for(row = 1; row <= size; row++)
    {
        printch = mych;
        cout << "n" << setw(8);
        for(col = 1; col <=row; col++)
        {
            cout << printch;
            printch++;
        }
    }
    for(row = size ; row <= size; row++)
    {
        printch = mych;
        cout << "n" << setw(8);
        for(col = mych; col <=row; col++)
        {
            cout << printch;
            printch++;
        }
    }
    cout << "nn";
    system ("pause");
    return 0;
}

我被这个问题难住了。任何帮助都将不胜感激!

for(row = size ; row <= size; row++)

(即第二个外部for环路)

实际上应该是:

for(row = size ; row >= 0; row--)

问题是,当您从大小开始时,应该减少行,而不是增加行,并在达到0时结束。