Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ tạo kim tự tháp và mẫu hình (pattern)


Có nhiều mẫu kim tự tháp (pyramid pattern) khác nhau có thể tạo trong C++. Chúng chủ yếu dùng vòng lặp for lồng nhau. Một số kim tự tháp:

Kim tự tháp cơ bản

Mã tạo kim tự tháp cơ bản:

Ví dụ

#include <iostream>
using namespace std;

int main() {
  int n = 6, i, j;
  for (i = 1; i <= n; i++) {
    for (j = 1; j <= i; j++)
      cout << "* ";
    cout << endl;
  }
  return 0;
}

Kết quả đầu ra

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

Trong chương trình, 2 vòng lặp for với biến i và j. Vòng ngoài đếm số hàng kim tự tháp, vòng trong đếm số sao in mỗi hàng:

for (i = 1; i <= n; i++) {
  for (j = 1; j <= i; j++)
    cout << "* ";
  cout << endl;
}

Kim tự tháp xoay (Rotated Pyramid)

Mã tạo kim tự tháp xoay:

Ví dụ

#include <iostream>
using namespace std;

int main() {
  int n = 6, k = 2 * n - 2;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < k; j++)
      cout << " ";
    for (int j = 0; j <= i; j++)
      cout << "* ";
    k = k - 2;
    cout << endl;
  }
  return 0;
}

Kết quả đầu ra

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

Trong chương trình, hai vòng lặp lồng nhau với biến i và j. k khởi tạo = 2*n - 2. Vòng ngoài đếm số hàng. Vòng trong đầu chỉ số khoảng trống trước sao. Vòng trong sau chỉ số sao mỗi hàng:

for (int i = 0; i < n; i++) {
  for (int j = 0; j < k; j++)
    cout << " ";
  for (int j = 0; j <= i; j++)
    cout << "* ";
  k = k - 2;
  cout << endl;
}