Blaise Pascal là một nhà toán học người Pháp. Mặc dù tam giác Pascal được đặt theo tên của ông

Câu Fcs7 trang 44 SBT Tin học 11Tam giác Pascal

Blaise Pascal là một nhà toán học người Pháp. Mặc dù tam giác Pascal được đặt theo tên của ông, một người sống ở thế kỉ XVII, nhưng thực tế nó đã được nghiên cứu từ rất lâu về trước, ở nhiều quốc gia khác nhau. Bằng tam giác này, em có được hệ số của các hạng tử trong nhị thức (a + b)" (nằm trên dòng thứ 7 của tam giác).

Công thức của tam giác này rất đơn giản: C(i, j) = C(i – 1,j) + C − 1, j − 1) với C(i, j) là kí hiệu cho ô ở dòng i, cột j (đây cũng là tổ hợp số cách chọn ra j phần tử từ một tập hợp có i phần tử).

Theo định nghĩa, ta cũng có C(i, 0) = C(i, i) = I.

Hãy quan sát các dòng 0, 1, 2, 3, 4, 5 của tam giác Pascal:

Blaise Pascal là một nhà toán học người Pháp Mặc dù tam giác Pascal

Yêu cầu: Nhập vào số nguyên n, hãy in ra dòng thứ n của tam giác Pascal. Dữ liệu: Nhập từ thiết bị vào chuẩn, một dòng duy nhất chứa số nguyên n. Kết quả: Hiển thị ở thiết bị ra chuẩn, chứa n + 1 số nguyên là dòng thứ n của tam giác Pascal.

Blaise Pascal là một nhà toán học người Pháp Mặc dù tam giác Pascal

Trả lời

- Quan sát công thức, ta thấy C(i, j) phụ thuộc vào hai ô ở dòng i – 1. Vậy em có thể tính từng dòng một của tam giác và thêm dần vào mảng hai chiều C.

- Quan sát đoạn chương trình ở Cách 1, ta thấy C được khai báo là kiểu danh sách (dấu []), nên các phần tử không cần phải giống nhau về kiểu dữ liệu. Em có thể thấy các phần tử của C (các dòng của bảng) có kích thước khác nhau (dòng thứ i có chứa đúng i số).

Một hướng làm khác giúp tiết kiệm bộ nhớ hơn, đó là sử dụng hai mảng (n + 1)(n+2) một chiều thay vì dùng cả bảng có kích thước vào khoảng 2. Làm được như vậy vì trong công thức ta chỉ cần quan tâm tới dòng i − 1 và dòng i.

Chương trình mẫu:

Cách 1:

Blaise Pascal là một nhà toán học người Pháp Mặc dù tam giác Pascal

Cách 2:

Blaise Pascal là một nhà toán học người Pháp Mặc dù tam giác Pascal

Xem thêm các bài giải sách bài tập Tin học lớp 11 Cánh diều hay, chi tiết khác: 

Câu hỏi cùng chủ đề

Xem tất cả