Lý thuyết Tin học 11 (Cánh diều) Bài 10: Thiết kế và chương trình từ trên xuống và phương pháp Mô đun hóa
Tóm tắt lý thuyết Tin học lớp 11 Bài 10: Thiết kế và chương trình từ trên xuống và phương pháp Mô đun hóa hay, chi tiết sách Cánh diều sẽ giúp học sinh nắm vững kiến thức trọng tâm, ôn luyện để học tốt Tin học 11.
Lý thuyết Tin học 11 Bài 10: Thiết kế và chương trình từ trên xuống và phương pháp Mô đun hóa
A. Lý thuyết Thiết kế và chương trình từ trên xuống và phương pháp Mô đun hóa
1. Thiết kế chương trình từ trên xuống theo phương pháp mô đun hoá
- Thiết bị, đồ dùng được thiết kế theo mô đun để dễ tháo lắp, vận chuyển, sửa chữa, thay thế
- Mô đun là bộ phận hay phần của thiết bị hay chương trình phần mềm, được thiết kế tách thành khối riêng biệt và độc lập
- Tính độc lập của mỗi mô đun cho phép thay thế mô đun đó bằng cái tương đương mà vẫn giữ nguyên các mô đun khác
- Một chương trình lớn có thể gồm nhiều tệp mã nguồn, mỗi tệp mã nguồn là một mô đun phần mềm
- Một hàm trong chương trình cũng có thể coi là một mô đun, tương đối độc lập với những phần còn lại của chương trình.
- Mô đun hoá là phương pháp thông dụng để làm phần mềm và lập trình
- Áp dụng phương pháp mô đun hoá, người lập trình làm theo các giai đoạn sau:
+ Giai đoạn 1: liệt kê các việc lớn bằng các gạch đầu dòng để tuần tự nhập dữ liệu đến kết quả cuối cùng
+ Giai đoạn 2: phân chia mỗi bước thành công việc độc lập và thiết kế các hàm thực hiện công việc đó, xác định tên hàm, đầu vào, đầu ra
+ Giai đoạn 3: lập trình từng hàm theo thiết kế; kiểm thử, gỡ lỗi từng hàm
+ Giai đoạn 4: viết chương trình chính bằng cách gọi các hàm đã hoàn thành để thực hiện các bước từ giai đoạn 1, chạy thử và kiểm tra tổng thể.
- Lập trình theo phương pháp mô đun hoá dẫn đến chương trình có một số hàm do người lập trình định nghĩa
- Chương trình chính gọi các hàm để nhập dữ liệu, xử lý và xuất kết quả cuối cùng ra màn hình hoặc tệp, sau đó kết thúc
- Trái với lập trình kiểu nguyên khối, không có hàm nào do người lập trình tự định nghĩa
- Một chương trình dài mà không có hàm do người lập trình tự định nghĩa thì không phải là kết quả lập trình theo mô đun.
2. Minh hoạ về lập trình theo phương pháp mô đun hoá
- Ước lượng độ phức tạp thời gian của thuật toán tìm kiếm tuần tự là O(n), tìm kiếm nhị phân là O(log n)
- Để minh hoạ trực quan, ta lập một dự án lập trình nhỏ để thực nghiệm và đo thời gian thực tế chạy thuật toán với các dãy số đầu vào ngẫu nhiên, lấy giá trị trung bình.
- Dưới đây là ví dụ minh hoạ việc áp dụng phương pháp mô đun hoá trong thiết kế chương trình và lập trình cho dự án này.
- Giai đoạn 1. Liệt kê các việc lớn
+ Sinh dãy ngẫu nhiên n số, gọi là dãy A
+ Sắp xếp dãy A thành dãy B theo thứ tự tăng dần
+ Đo thời gian tìm kiếm tuần tự và nhị phân của một số có trong dãy A và dãy B, tính trung bình cộng và xuất kết quả
+ Đo thời gian tìm kiếm tuần tự và nhị phân của một số x bất kì trong dãy A và dãy B, tính trung bình cộng và xuất kết quả.
- Giai đoạn 2. Thiết kế các hàm
+ Phân tích chi tiết hơn những việc lớn cần làm trong từng bước kể trên thành các việc cụ thể hơn, Ví dụ:
* Hàm dayngaunhien: đầu vào hai số nguyên n và M, đầu ra một dãy n số ngẫu nhiên trong khoảng (0, M).
* Hàm sapxep: đầu vào một dãy số, đầu ra dãy số được sắp xếp theo thứ tự tăng dần.
* Tìm kiếm tuần tự: tên hàm tktuantu,...
* Tìm kiếm nhị phân: tên hàm tknhiphan...
+ Sinh ngẫu nhiên một số nguyên i trong khoảng (0, n − 1).
+ Chọn x = a[i] (phần tử chỉ số i trong dãy A).
+ Xác định x cũng có mặt trong dãy B.
+ Tìm số có mặt trong dãy: tên hàm tkcomat
+ Đầu vào: x = a nói trên; hai dãy số A, B.
+ Đầu ra: khoảng thời gian từ lúc bắt đầu tìm kiếm cho đến khi tìm thấy:
* Bằng tìm kiếm tuần tự trong dãy A.
* Bằng tìm kiếm nhị phân trong dãy B.
+ Tìm số x bất kì: tên hàm tkbatki.
+ Đầu vào: một số x sinh ngẫu nhiên; hai dãy số A, B.
+ Đầu ra: khoảng thời gian từ lúc bắt đầu tim kiếm cho đến khi:
* Bằng tìm kiếm tuần tự trong dãy A.
* Bằng tìm kiếm nhị phân trong dãy B.
+ Kết thúc tìm kiếm:
- Ghi lại khoảng thời gian tìm kiếm: sử dụng hàm time để bắt đầu và kết thúc thời gian tìm kiếm bằng cách đặt trước và sau câu lệnh gọi tìm kiếm tuần tự (hoặc tìm kiếm nhị phân).
- Tính trung bình cộng thời gian tìm kiếm và xuất kết quả: tính tổng thời gian tìm kiếm và chia cho số lần thực hiện để tính trung bình. Không cần viết thành hàm riêng.
- Với Giai đoạn 3 và Giai đoạn 4, học sinh thực hiện dựa vào các kiến thức đã học đồng thời làm theo gợi ý của thầy, cô giáo.
3. Các ưu điểm của lập trình theo phương pháp mô đun hoá
- Phối hợp cùng lập trình: Tổ chức thành vài tệp mã nguồn riêng biệt để lập trình và tránh trùng lặp.
- Chương trình dễ hiểu hơn: Lập trình theo mô đun hoá dẫn đến chương trình ngắn gọn và dễ hiểu hơn, có các hàm với tên gợi nhớ cho biết chức năng của chúng.
- Dễ kiểm thử và sửa lỗi hơn: Phương pháp mô đun hoá tách biệt các công việc nên dễ thấy lỗi xảy ra khi xử lí việc gì, ở phần chương trình thực hiện hàm nào.
- Khả năng tái sử dụng: Những hàm do người lập trình tự định nghĩa có thể được dùng không chỉ trong chương trình vừa hoàn thành mà còn ở những chương trình khác sau này.
B. Bài tập Thiết kế và chương trình từ trên xuống và phương pháp Mô đun hóa
Đang cập nhật…
Xem thêm các bài lý thuyết Tin học 11 sách Cánh diều hay, chi tiết tại:
Lý thuyết Bài 6: Kiểm thử và sửa lỗi chương trình
Lý thuyết Bài 7: Lập trình giải bài toán tìm kiếm
Lý thuyết Bài 8: Lập trình một số thuật toán sắp xếp
Lý thuyết Bài 9: Lập trình thuật toán sắp xếp nhanh
Lý thuyết Bài 15: Cấu trúc dữ liệu danh sách liên kết và ứng dụng
Xem thêm các chương trình khác:
- Soạn văn lớp 11 Cánh diều (hay nhất)
- Văn mẫu lớp 11 - Cánh diều
- Tóm tắt tác phẩm Ngữ văn 11 – Cánh diều
- Tác giả tác phẩm Ngữ văn 11 - Cánh diều
- Giải SBT Ngữ văn 11 – Cánh diều
- Bố cục tác phẩm Ngữ văn 11 – Cánh diều
- Giải Chuyên đề học tập Ngữ văn 11 – Cánh diều
- Nội dung chính tác phẩm Ngữ văn lớp 11 – Cánh diều
- Soạn văn 11 Cánh diều (ngắn nhất)
- Giải sgk Toán 11 – Cánh diều
- Giải Chuyên đề học tập Toán 11 – Cánh diều
- Lý thuyết Toán 11 - Cánh diều
- Giải sbt Toán 11 – Cánh diều
- Giải sgk Tiếng Anh 11 – ilearn Smart World
- Giải sbt Tiếng Anh 11 - ilearn Smart World
- Trọn bộ Từ vựng Tiếng Anh 11 ilearn Smart World đầy đủ nhất
- Giải sgk Vật lí 11 – Cánh diều
- Lý thuyết Vật lí 11 – Cánh diều
- Giải sbt Vật lí 11 – Cánh diều
- Giải Chuyên đề học tập Vật lí 11 – Cánh diều
- Giải sgk Hóa học 11 – Cánh diều
- Giải Chuyên đề học tập Hóa học 11 – Cánh diều
- Lý thuyết Hóa 11 - Cánh diều
- Giải sbt Hóa học 11 – Cánh diều
- Giải sgk Sinh học 11 – Cánh diều
- Lý thuyết Sinh học 11 – Cánh diều
- Giải Chuyên đề học tập Sinh học 11 – Cánh diều
- Giải sbt Sinh học 11 – Cánh diều
- Giải sgk Giáo dục Kinh tế và Pháp luật 11 – Cánh diều
- Giải Chuyên đề học tập Kinh tế pháp luật 11 – Cánh diều
- Lý thuyết Kinh tế pháp luật 11 – Cánh diều
- Giải sbt Kinh tế pháp luật 11 – Cánh diều
- Giải sgk Lịch sử 11 – Cánh diều
- Giải Chuyên đề học tập Lịch sử 11 – Cánh diều
- Lý thuyết Lịch sử 11 - Cánh diều
- Giải sbt Lịch sử 11 – Cánh diều
- Giải sgk Địa lí 11 – Cánh diều
- Giải Chuyên đề học tập Địa lí 11 – Cánh diều
- Lý thuyết Địa lí 11 - Cánh diều
- Giải sbt Địa lí 11 – Cánh diều
- Giải sgk Công nghệ 11 – Cánh diều
- Lý thuyết Công nghệ 11 - Cánh diều
- Giải sbt Công nghệ 11 – Cánh diều
- Giải sgk Giáo dục quốc phòng an ninh 11 – Cánh diều
- Lý thuyết Giáo dục quốc phòng 11 – Cánh diều
- Giải sbt Giáo dục quốc phòng 11 – Cánh diều
- Giải sgk Hoạt động trải nghiệm 11 – Cánh diều