C++程式列印直角三角形星號圖案
星號 "*" 用於星號圖案中表示各種形狀,例如三角形、菱形、空心形狀等。星號圖案就是這些形狀的名稱。本教程將演示如何使用 C++ 顯示左對齊的三角形星號圖案。這裡,我們接受星號圖案的行數作為輸入。圖案將根據該行數列印。
下表將包含我們建立的列印星號的邏輯。下表可以幫助我們理解。
*
* *
* * *
* * * *
* * * * *
* * * * * *
在這個例子中,有 6 行。所以考慮 n = 6。對於每一行 ‘i’,都有星號,也有用於填充的空格。我們必須制定星號和空格的關係才能顯示圖案。
| 行號 (i) | 星號數量 (j) | 空格 (k) |
|---|---|---|
| 1 | 1 | 5 |
| 2 | 2 | 4 |
| 3 | 3 | 3 |
| 4 | 4 | 2 |
| 5 | 5 | 1 |
| 6 | 6 | 0 |
在這個問題中,星號的數量遵循行號 ‘i’,但空格逐漸減少。它遵循 (n – i)。為了實現這一點,我們需要另一個迴圈僅用於空格,在列印星號之前。
演算法
- 讀取行數作為輸入 n
- 對於 i 從 1 到 n,執行
- 對於 k 從 1 到 (n - i),執行
- 顯示空格 (' ')
- 結束迴圈
- 對於 j 從 1 到 i,執行
- 顯示星號 ( * )
- 結束迴圈
- 將游標移到下一行
- 對於 k 從 1 到 (n - i),執行
- 結束迴圈
由於我們的線上編譯器有時會截斷行並刪除每行之前和之後的空格,因此我們透過在空格處放置點 (.) 來進行測試。
示例
#include <iostream>
using namespace std;
void solve( int n ){
int i, j, k;
for( i = 1; i <= n; i++ ) {
for( k = 1; k <= (n - i); k++ ) {
cout << ". ";
}
for( j = 1; j <= i; j++ ) {
cout << "* ";
}
cout << endl;
}
}
int main(){
int n = 10;
cout << "Left Star Pattern using " << n << " number of lines:" << endl;
solve( n );
}
輸出
Left Star Pattern using 10 number of lines: . . . . . . . . . * . . . . . . . . * * . . . . . . . * * * . . . . . . * * * * . . . . . * * * * * . . . . * * * * * * . . . * * * * * * * . . * * * * * * * * . * * * * * * * * * * * * * * * * * * *
輸出 (對於 n = 18)
Left Star Pattern using 18 number of lines: . . . . . . . . . . . . . . . . . * . . . . . . . . . . . . . . . . * * . . . . . . . . . . . . . . . * * * . . . . . . . . . . . . . . * * * * . . . . . . . . . . . . . * * * * * . . . . . . . . . . . . * * * * * * . . . . . . . . . . . * * * * * * * . . . . . . . . . . * * * * * * * * . . . . . . . . . * * * * * * * * * . . . . . . . . * * * * * * * * * * . . . . . . . * * * * * * * * * * * . . . . . . * * * * * * * * * * * * . . . . . * * * * * * * * * * * * * . . . . * * * * * * * * * * * * * * . . . * * * * * * * * * * * * * * * . . * * * * * * * * * * * * * * * * . * * * * * * * * * * * * * * * * *
結論
在學習任何語言的程式設計時,星號圖案用於教授巢狀迴圈。本文演示了在給出行數時如何顯示右對齊的三角形。它將顯示有多少行以及每行有多少個星號。為了對齊,在星號之前顯示空格(線上編譯器導致我們列印點而不是空格)。在本地測試它們時,您可以使用空隙進行測試。還研究了一種表格方法來確定第 i 行的星號和空格。我們可以輕鬆地更改公式,使用這個想法來演示其他圖案。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP