Logic của tam giác Pascal trong C là gì?

Ngay cả khi bạn chỉ là người mới bắt đầu viết mã, thì bạn cũng phải gặp các vấn đề như in các hình tam giác như nửa kim tự tháp, nửa kim tự tháp ngược và kim tự tháp đầy đủ bằng cách sử dụng một số ký tự. Một biến thể của các bài toán nêu trên là Tam giác Pascal. Trong bài viết này, chúng ta sẽ thảo luận về tam giác pascal là gì và cách triển khai nó trong C++

Nhưng trước khi tiếp tục, chúng tôi mong rằng bạn đã có hiểu biết cơ bản về câu lệnh điều kiện và vòng lặp

Tam giác Pascal là gì?

Tam giác Pascal được đặt theo tên của một nhà toán học người Pháp tên là Blaise Pascal. Đó là một hình tam giác được tạo thành từ các số được sắp xếp theo một cách nhất định. Tam giác được xây dựng bằng nguyên tắc cộng. Chúng ta có ý nghĩa gì bởi nguyên tắc cộng? . Quy tắc lấy các phần tử mới của tam giác pascal này chỉ áp dụng cho các phần tử bên trong của tam giác chứ không áp dụng cho các phần tử ở các cạnh. Các phần tử này trên các cạnh, trừ đáy, của tam giác đều bằng 1

Logic của tam giác Pascal trong C là gì?

Bây giờ chúng ta đã biết tam giác Pascal là gì, bây giờ chúng ta hãy thảo luận về một trong những tính chất toán học quan trọng nhất của nó sẽ giúp chúng ta triển khai tam giác Pascal thông qua mã. Nếu bạn có một chút nền tảng toán học thì phải làm quen với khái niệm hoán vị và tổ hợp. Số cách chọn một số đối tượng nhất định từ một nhóm đối tượng được gọi là kết hợp.  

Công thức tam giác Pascal là gì?

Công thức tính số cách chọn r đối tượng từ n đối tượng được đưa ra dưới đây

Logic của tam giác Pascal trong C là gì?

Bây giờ, hãy giữ chặt vì bạn sẽ ngạc nhiên trước sự thật này. Mỗi phần tử trong Tam giác Pascal có thể được tính bằng số hàng và cột của phần tử. Ví dụ: giá trị của phần tử ở hàng thứ ba và cột thứ hai sẽ bằng 2C1, tức là 2. Lưu ý cách số hàng và số cột được trừ đi 1 trong khi tính toán giá trị. Điều này là do việc đếm trong lập trình bắt đầu từ 0 chứ không phải từ 1. Nhìn vào hình ảnh dưới đây, để có một sự hiểu biết rõ ràng hơn

Logic của tam giác Pascal trong C là gì?

Điều này cũng có thể được hiểu bằng cách sử dụng khai triển nhị thức. Vì mỗi hệ số nhị thức bằng một giá trị trong Tam giác Pascal. Bây giờ, chúng ta đã hiểu thế nào là tam giác pascal và tính chất tổ hợp của nó, chúng ta sẽ sử dụng tính chất này để viết mã

Làm thế nào để In Tam giác Pascal trong Lập trình C++?

Nếu bạn đã viết mã được một thời gian, bạn phải triển khai một số mẫu hình tam giác bằng cách sử dụng các câu lệnh lặp và điều kiện. Việc triển khai tam giác của Pascal cũng tương tự với một vài thay đổi

Để thực hiện, chúng tôi sử dụng vòng lặp lồng nhau. Vòng lặp bên ngoài hoạt động để thụt lề hàng. Vòng lặp đầu tiên bên trong vòng lặp bên ngoài tạo thụt lề thích hợp bằng cách sử dụng khoảng trắng để chúng ta có được màn hình tam giác. Vòng lặp thứ hai bên trong vòng lặp bên ngoài tính toán giá trị của phần tử hiện tại bằng cách sử dụng giá trị của phần tử trước đó với sự trợ giúp của công thức sau

Logic của tam giác Pascal trong C là gì?

Tất cả điều này xảy ra bên trong một hàm chịu trách nhiệm in tam giác pascal và nó chỉ nhận một đối số là số hàng được in của tam giác pascal

Mã C ++ cho Tam giác Pascal

#include
using namespace std;
 
// Function to print the Pascal's Triangle
void print_pascal(int row_num){
 
    // Loop to print each row
    for(int n = 1; n <= row_num; n++){
 
        // Loop to print spaces for triangular display
        for(int r = 1; r < row_num-n+1; r++)
            cout<<"  ";
 
        // Loop to print values using the Combinations formula
        int val = 1;
        for(int r = 1; r <= n; r++){
            cout<<val<<"   ";
             
            val = val * (n - r)/r;
        }
        cout<<endl;
    }
}
 
int main(){
 
    int row_num = 8;
    print_pascal(row_num);
 
    return 1;
}

 

đầu ra

              1   
            1   1   
          1   2   1   
        1   3   3   1   
      1   4   6   4   1   
    1   5   10   10   5   1   
  1   6   15   20   15   6   1   
1   7   21   35   35   21   7   1   

 

Độ phức tạp về thời gian

Thuật toán này hiệu quả và yêu cầu thời gian O(n2) do vòng lặp lồng nhau

Độ phức tạp không gian

Thuật toán này không yêu cầu bất kỳ không gian phụ trợ nào và do đó có độ phức tạp không gian là O(n)

Phần kết luận

Những vấn đề như thế này phát triển tư duy giải quyết vấn đề của một người và do đó khiến người đó trở thành người giải quyết vấn đề tốt hơn. Nếu bạn thấy Tam giác Pascal hơi khó hiểu, chúng tôi khuyên bạn trước tiên nên xem cách in toàn bộ kim tự tháp rồi quay lại và thử tam giác pascal một lần nữa. Một điểm khác mà chúng tôi muốn lưu ý với bạn là tam giác Pascal có thể được in bằng nhiều cách tiếp cận khác nhau, nhưng trong bài viết này, chúng tôi chỉ thảo luận về cách hiệu quả nhất cùng với mã của nó trong C++

Làm thế nào để code tam giác Pascal trong C?

Lập trình .
#bao gồm < stdio. giờ >
giai thừa dài(int);
int chính ()
int i, n, c;
printf("Nhập số hàng bạn muốn xem trong tam giác pascal\n");
scanf("%d", &n);
for (i = 0; i < n; i++) {

Thuật toán cho tam giác Pascals là gì?

Trong Tam giác Pascal, mỗi phần tử của mỗi hàng được tính bằng công thức Tổ hợp thường được gọi là "n chọn k" hoặc số tổ hợp của k phần tử từ n phần tử. công thức là. C(n,k)=(nk)=n. k. (n−k).

Tại sao Tam giác Pascal hoạt động?

Việc tạo tam giác Pascal hoạt động vì trong phép nhân dài của một đa thức với (x+y), cuối cùng bạn cộng các hệ số liền kề của đa thức với nhau. The Fun Fact Multiplication By 11 is based on this idea.