Vẽ tam giác Pascal trong C



Bài tập C: Vẽ tam giác Pascal

Bài tập vẽ tam giác Pascal là bài tập điển hình của sinh viên trong khi học về các ngôn ngữ lập trình. Bạn theo dõi hình minh họa tam giác Pascal sau:

Vẽ Tam giác Pascal trong C

Tam giác Pascal có qui tắc sau:

  • Tất cả các giá trị bên ngoài tam giác được xem như là 0.

  • Hàng đầu tiên sẽ là 0 1 0, trong đó chỉ có giá trị 1 có được một khoảng trống trong tam giác Pascal, còn 0 là không nhìn thấy.

  • Hàng thứ hai được tạo bằng cách cộng hai số liên tiếp nhau từ hàng thứ nhất: (0 + 1) và (1 + 0).

  • Các hàng còn lại cũng được tạo bằng cách cộng như trên. Ví dụ với hàng thứ ba là cộng các số liên tiếp nhau từ hàng thứ hai: (0 + 1), (1 + 1) và (1 + 0).

Từ các qui tắc trên, trước hết chúng ta viết một hàm để tính các giá trị của tam giác Pascal bởi sử dụng đệ qui (tất nhiên là bạn có thể sử dụng cách khác). Trong hàm main(), chúng ta sẽ sử dụng ba vòng lặp. Một vòng lặp bên ngoài để điều khiển số hàng. Hai vòng lặp bên trong: một vòng lặp để in khoảng trống và một vòng lặp để in giá trị.

Chương trình C

Dưới đây là chương trình C để giải bài tập vẽ tam giác Pascal trong C:

#include int factorial(int n) {
   int f;
   
   for(f = 1; n > 1; n--)
      f *= n;
      
   return f;
}int ncr(int n,int r) {
   return factorial(n) / ( factorial(n-r) * factorial(r) );
}int main() {
   int n, i, j;   n = 5;   printf("Ve tam giac Pascal:\n\n");
   for(i = 0; i <= n; i++) {
      for(j = 0; j <= n-i; j++)
         printf("  ");
         
      for(j = 0; j <= i; j++)
         printf(" %3d", ncr(i, j));      printf("\n");
   }
   return 0;
}

Biên dịch chương trình C trên sẽ cho kết quả:

Vẽ tam giác Pascal trong C
bai-tap-long-vong-lap-trong-c.jsp