C++程式列印上三角星形圖案


星形圖案使用星號 "*" 來表示各種形狀,例如直角三角形或其他三角形和菱形。這些形狀被稱為星形圖案。本教程將演示如何使用 C++ 來顯示左上三角星形圖案。這裡,我們接受星形圖案的行數作為輸入。圖案將根據該行數列印。

下表將包含我們建立的用於列印星號的邏輯。下表可以幫助我們理解。

* * * * * *
* * * * *
* * * *
* * *
* *
*

在這個例子中,有 6 行。所以考慮 n = 6。對於每一行 ‘i’,它將遵循星號計數

行號 (i) 星號計數 (j)
1 6
2 5
3 4
4 3
5 2
6 1

這裡 j 遵循公式 (n – i + 1),因此在任何一行 ‘i’ 上,該行都有 ‘(n – i + 1)’ 個星號。讓我們看看這個演算法 -

演算法

  • 讀取行數作為輸入 n
  • 對於 i 從 1 到 n 的範圍,執行
    • 對於 j 從 1 到 (n – i + 1) 的範圍,執行
      • 顯示星號 ( * )
    • 結束迴圈
    • 將游標移動到下一行
  • 結束迴圈

示例

#include <iostream>
#include <ctype.h>
using namespace std;
void solve( int n ){
   int i, j;
   for( i = 1; i <= n; i++ ) {
      for( j = 1; j <= (n - i + 1); j++ ) {
         cout << "* ";
      }
      cout << endl;
   }
}
int main(){
   int n = 10;
   cout << "Upper left Star Pattern using " << n << " number of lines:" << endl;
   solve( n );
}

輸出

Upper left Star Pattern using 10 number of lines:
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*

輸出 (對於 n = 20)

Upper left Star Pattern using 20 number of lines:
* * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * *
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*

結論

為了在學習任何語言的程式設計時充分理解巢狀迴圈,演示了星形圖案。本文演示瞭如何在提供行數時使用星號(星形)顯示左上三角形。它將顯示有多少行以及每行有多少個星號。為了計算第 i 行的星號數,還探討了一種表格方法。使用這個概念,我們可以輕鬆修改公式來顯示其他圖案。

更新於: 2022-12-13

瀏覽量 557

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告