Nội dung chính
Bài tập: vẽ tam giác Pascal trong C++.
Đề bài: Viết chương trình C++ 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).
Lời giải: bài tập vẽ tam giác Pascal trong C++
Chúng ta sử dụng ba vòng lặp lồng nhau. 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ị.
Dưới đây là chương trình C++ để giải bài tập vẽ tam giác Pascal trong C++:
#include <iostream> #include <iomanip> using namespace std; 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 = 6; printf("Ve tam giac Pascal:\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; }
Kết quả: