Chuyển đến nội dung chính

Vẽ Tam Giác Pascal Trong C++

Đề Bài: Nhập vào một số nguyên dương n. Bằng ngôn ngữ lập trình C++, hãy vẽ ra tam giác pascal với chiều cao n.

Input:

3

Output:

  1
 1 1
1 2 1

Cách 1: Sử dụng mảng 2 chiều để in và lưu trữ tam giác pascal

Trong cách này, chúng ta sử dụng một mảng hai chiều để lưu trữ các giá trị của Tam giác Pascal và sau đó in ra các giá trị đó.

  • Đầu tiên, chúng ta khai báo một mảng hai chiều có kích thước n x n để lưu trữ các giá trị của Tam giác Pascal.
  • Tiếp theo, chúng ta sử dụng hai vòng lặp lồng nhau để tính và gán giá trị cho mỗi phần tử của mảng. Chúng ta bắt đầu từ hàng đầu tiên và cột đầu tiên của mảng và dùng công thức pascal[i][j] = pascal[i – 1][j – 1] + pascal[i – 1][j] để tính giá trị của mỗi phần tử.
  • Sau khi tính toán xong, chúng ta sử dụng một vòng lặp khác để in ra các giá trị của mảng Tam giác Pascal.
#include <iostream>
using namespace std;

void displayPascalTriangle(int n) {
    int pascal[n][n];

    // Tạo tam giác Pascal
    for (int i = 0; i < n; i++) {
        for (int j = 0; j <= i; j++) {
            if (j == 0 || j == i) {
                pascal[i][j] = 1;
            } else {
                pascal[i][j] = pascal[i - 1][j - 1] + pascal[i - 1][j];
            }
        }
    }

    // In tam giác Pascal
    for (int i = 0; i < n; i++) {
        for (int j = 0; j <= i; j++) {
            cout << pascal[i][j] << " ";
        }
        cout << endl;
    }
}

int main() {
    int n;
    cout << "Nhap so hang cua tam giac Pascal: ";
    cin >> n;

    displayPascalTriangle(n);

    return 0;
}

Cách 2: Sử dụng đệ quy để tính giá trị của từng phần tử trong Tam giác Pascal.

Trong cách này, chúng ta sử dụng công thức tổ hợp để tính giá trị của từng phần tử trong Tam giác Pascal và sau đó in ra các giá trị đó.

  • Chúng ta định nghĩa một hàm đệ quy calculatePascalValue(n, k) để tính giá trị của phần tử tại vị trí (n, k) trong Tam giác Pascal.
    Trong hàm đệ quy, chúng ta sử dụng công thức calculatePascalValue(n – 1, k – 1) + calculatePascalValue(n – 1, k) để tính giá trị của phần tử đó bằng cách tính tổng của hai phần tử ở hàng trên đó.
  • Sau đó, chúng ta sử dụng hai vòng lặp lồng nhau để duyệt qua các hàng và cột của Tam giác Pascal và in ra giá trị của từng phần tử.
#include <iostream>
using namespace std;

int calculatePascalValue(int n, int k) {
    if (k == 0 || k == n) {
        return 1;
    } else {
        return calculatePascalValue(n - 1, k - 1) + calculatePascalValue(n - 1, k);
    }
}

void displayPascalTriangle(int n) {
    for (int i = 0; i < n; i++) {
        for (int j = 0; j <= i; j++) {
            cout << calculatePascalValue(i, j) << " ";
        }
        cout << endl;
    }
}

int main() {
    int n;
    cout << "Nhap so hang cua tam giac Pascal: ";
    cin >> n;

    displayPascalTriangle(n);

    return 0;
}

Cách 3: Sử dụng các ký hiệu đặc biệt để vẽ Tam giác Pascal.

Chúng ta sử dụng một biến coef để tính toán giá trị của mỗi phần tử trong Tam giác Pascal.

  • Đầu tiên, chúng ta in ra giá trị 1 cho phần tử đầu tiên của mỗi hàng.
  • Sau đó, chúng ta sử dụng công thức coef = coef * (i – j + 1) / j để tính toán giá trị của các phần tử tiếp theo của hàng hiện tại dựa trên giá trị của phần tử trước đó.
  • Cuối cùng, chúng ta in ra các giá trị đã tính được.
#include <iostream>
using namespace std;

void displayPascalTriangle(int n) {
    int coef = 1;

    for (int i = 0; i < n; i++) {
        for (int j = 0; j <= i; j++) {
            if (j == 0 || i == 0) {
                coef = 1;
            } else {
                coef = coef * (i - j + 1) / j;
            }
            cout << coef << " ";
        }
        cout << endl;
    }
}

int main() {
    int n;
    cout << "Nhap so hang cua tam giac Pascal: ";
    cin >> n;

    displayPascalTriangle(n);

    return 0;
}

The post Vẽ Tam Giác Pascal Trong C++ first appeared on Techacademy.



Nhận xét

Bài đăng phổ biến từ blog này

Vẽ Tam Giác Trong C++

Vẽ tam giác trong C++ là một trong những bài tập lập trình về C++ sử dụng vòng lặp khá hay giúp các bạn luyện tư duy code cũng như cách sử dụng vòng lặp. Dưới đây là một số lời giải các bài tập vẽ tam giác trong C++ I. Vẽ Tam Giác Cân Trong C++ Viết chương trình C++ sử dụng ký tự * để vẽ tam giác vuông cân trong C++.Chúng ta sử dụng hai vòng lặp lồng nhau để giải bài toán này. Lời Giải: #include <stdio.h> #include <stdlib.h> int main() { int n; int q = 0; printf("Chuong trinh nay se in ra tam giac can\n"); printf("Nhap chieu cao tam giac cua ban: \n"); scanf("%d",&n); while (n > 0) { for (int i = 1; i<n; i++) printf("%c", ' '); for (int k = 0; k <= q; k ++) printf("%c", '*'); n -- ; q += 2 ; printf("\n"); } return 0; } II. Vẽ Hình Tam Giác Trong C++ Viết một chương trình in ra hình ...

Biến Trong PHP

Khái niệm về biến trong PHP là kiến thức nền tảng trong lập trình PHP mà hầu như lập trình viên nào cũng phải học đầu tiên. Trong bài này chúng ta sẽ đi tìm hiểu khái niệm thế nào là biến. I. Biến trong php để làm gì Bạn còn nhớ môn Đại Số ở  Trường Không ? Dạng như , x = 1 , y = 2 , z =3 Bạn còn nhớ với mỗi từ ta có thể gán 1 giá trị (vd : x = 2 , y = 123 , z = 52 v.v ) và bạn sẽ dùng mấy thông tin đó để tính 1 giá trị nào đó của d chẳng hạn . Tất cả những cái trên được gọi là Biến PHP , và biến được dùng để giữ 1 giá trị nhất định (x=2) hoặc là các bài toán như ( d = a+b+c ) trong đó a,b,c là các hằng số có giá trị bất kỳ ( vd : a = 1 , b = 2 , c = 3 thì d = a + b + c = 6 ) Ví dụ: <!DOCTYPE html> <html> <body> <?php //Đây là chú thích 1 dòng /* Đây là chú thích Nhiều Dòng */ ?> </body> </html> Biến PHP Với đại số, các biến PHP được sử dụng để giữ các giá trị hoặc biểu thức. Một biến có thể có một tên ngắn, như x, hoặc một cái tên dài ...

Biến Trong PHP

Khái niệm về biến trong PHP là kiến thức nền tảng trong lập trình PHP mà hầu như lập trình viên nào cũng phải học đầu tiên. Trong bài này chúng ta sẽ đi tìm hiểu khái niệm thế nào là biến. I. Biến trong php để làm gì Bạn còn nhớ môn Đại Số ở  Trường Không ? Dạng như , x = 1 , y = 2 , z =3 Bạn còn nhớ với mỗi từ ta có thể gán 1 giá trị (vd : x = 2 , y = 123 , z = 52 v.v ) và bạn sẽ dùng mấy thông tin đó để tính 1 giá trị nào đó của d chẳng hạn . Tất cả những cái trên được gọi là Biến PHP , và biến được dùng để giữ 1 giá trị nhất định (x=2) hoặc là các bài toán như ( d = a+b+c ) trong đó a,b,c là các hằng số có giá trị bất kỳ ( vd : a = 1 , b = 2 , c = 3 thì d = a + b + c = 6 ) Ví dụ: <!DOCTYPE html> <html> <body> <?php //Đây là chú thích 1 dòng /* Đây là chú thích Nhiều Dòng */ ?> </body> </html> Biến PHP Với đại số, các biến PHP được sử dụng để giữ các giá trị hoặc biểu thức. Một biến có thể có một tên ngắn, như x, hoặc một cái tên dài ...