2013-12-17 26 views
0

我能夠使一個計數器上升,但下降呢?總體而言,我希望如此:使用嵌套for循環來計數上下

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 << "\n\n"; 

    system ("pause"); 

    return 0; 
} 

我很難過這個問題。任何幫助,將不勝感激!

+2

減法是一件事情。這與加法相反。只是在說'。 –

+0

嘗試更簡單。你知道如何打印「54321」嗎? – Beta

+0

否定的。我正在參加C++初級班,我的教授非常具體。 – Harkins1721

回答

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

(即第二外for環)

實際上應該是:

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

的事情是,當你從大小開始,你應該減少排,而不是增加它,當你達到0時完成。

+0

非常感謝。我總是使用內循環!我做了col--而不是row--。我也沒有把它設置爲0.:P 非常感謝你! :d – Harkins1721