12+ Đề Trắc Nghiệm Tin Học 11 (Kết Nối Tri Thức) Bài 26: Phương Pháp Làm Mịn Dần Trong Thiết Kế Chương Trình

Đề 01

Đề 02

Đề 03

Đề 04

Đề 05

Đề 06

Đề 07

Đề 08

Đề 09

Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 01

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 01 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình có bản chất là gì?

  • A. Viết mã lệnh ngay từ đầu và sửa lỗi dần.
  • B. Chia nhỏ vấn đề lớn thành các bài toán con và chi tiết hóa dần giải pháp.
  • C. Tổ chức dữ liệu theo cấu trúc phức tạp để tối ưu hiệu suất.
  • D. Kiểm tra và gỡ lỗi chương trình sau khi đã viết xong toàn bộ.

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết bài toán "Thiết kế chương trình quản lý thư viện", bước đầu tiên ở mức tổng quát nhất thường là gì?

  • A. Thiết kế giao diện người dùng cho chương trình.
  • B. Viết mã cho chức năng tìm kiếm sách.
  • C. Chọn ngôn ngữ lập trình phù hợp.
  • D. Xác định các chức năng chính cần có của hệ thống quản lý thư viện.

Câu 3: Giả sử bạn đang ở bước "Xử lý yêu cầu mượn sách" trong thiết kế chương trình quản lý thư viện. Theo phương pháp làm mịn dần, bước tiếp theo bạn nên làm gì?

  • A. Chi tiết hóa các thao tác cần thực hiện để xử lý một yêu cầu mượn cụ thể (ví dụ: kiểm tra thẻ, kiểm tra sách còn không, cập nhật dữ liệu).
  • B. Bắt đầu thiết kế chức năng trả sách.
  • C. Kiểm tra lại toàn bộ các bước thiết kế trước đó.
  • D. Viết mã lệnh cho chức năng xử lý yêu cầu mượn sách.

Câu 4: Lợi ích chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Luôn tạo ra chương trình chạy nhanh nhất.
  • B. Tự động tìm và sửa lỗi trong mã lệnh.
  • C. Giảm thiểu hoàn toàn việc phải kiểm tra lại các bước.
  • D. Làm cho quá trình thiết kế trở nên có cấu trúc, dễ quản lý và dễ dàng chuyển thành mã lệnh.

Câu 5: Trong quá trình làm mịn dần, làm thế nào để biết khi nào một bước thiết kế đã đủ chi tiết để dừng lại và chuyển sang viết mã?

  • A. Khi toàn bộ chương trình đã được phác thảo trên giấy.
  • B. Khi đã chia nhỏ vấn đề thành ít nhất 10 bước con.
  • C. Khi các thao tác đã được chi tiết hóa đến mức có thể chuyển đổi trực tiếp thành mã lệnh.
  • D. Khi người thiết kế cảm thấy không thể chia nhỏ thêm được nữa.

Câu 6: Xét bài toán "Đếm số lần xuất hiện của mỗi từ trong một đoạn văn bản". Nếu bước tổng quát là "Đếm từ", thì một bước làm mịn đầu tiên hợp lý sẽ là gì?

  • A. Phân tích đoạn văn bản thành danh sách các từ.
  • B. Tạo một biến đếm tổng số từ.
  • C. In kết quả đếm ra màn hình.
  • D. Sắp xếp các từ theo thứ tự bảng chữ cái.

Câu 7: Giả sử một bước trong thiết kế là "Tìm kiếm một phần tử trong danh sách". Bước làm mịn nào dưới đây thể hiện kỹ thuật tìm kiếm tuần tự?

  • A. Chia danh sách thành hai nửa và tìm kiếm trong nửa phù hợp.
  • B. Duyệt qua từng phần tử của danh sách từ đầu đến cuối, so sánh với phần tử cần tìm.
  • C. Sắp xếp danh sách trước khi tìm kiếm.
  • D. Sử dụng một hàm băm để xác định vị trí phần tử.

Câu 8: Khi làm mịn một bước, mục tiêu là gì?

  • A. Làm cho bước đó trở nên chi tiết và cụ thể hơn.
  • B. Loại bỏ hoàn toàn bước đó khỏi thiết kế.
  • C. Gộp bước đó với một bước khác để giảm số lượng bước.
  • D. Chỉ tập trung vào việc tối ưu hiệu suất tính toán.

Câu 9: Phương pháp làm mịn dần thường được gọi là phương pháp thiết kế từ trên xuống (Top-Down Design) vì lý do nào?

  • A. Bắt đầu từ các chi tiết nhỏ nhất và xây dựng lên.
  • B. Ưu tiên thiết kế giao diện trước khi xử lý logic.
  • C. Chỉ áp dụng cho các bài toán đơn giản.
  • D. Bắt đầu từ cái nhìn tổng thể, trừu tượng và dần dần chi tiết hóa các thành phần.

Câu 10: Trong thuật toán sắp xếp chèn, bước tổng quát là "Sắp xếp dãy số". Một bước làm mịn đầu tiên là "Duyệt qua từng phần tử từ phần tử thứ hai". Bước làm mịn tiếp theo cho "Xử lý phần tử hiện tại" (phần tử đang duyệt) sẽ là gì?

  • A. So sánh phần tử hiện tại với phần tử cuối cùng của dãy.
  • B. Hoán đổi phần tử hiện tại với phần tử đầu tiên của dãy.
  • C. Chèn phần tử hiện tại vào đúng vị trí trong phần dãy đã sắp xếp.
  • D. Bỏ qua phần tử hiện tại nếu nó đã ở đúng vị trí.

Câu 11: Giả sử bạn có bước thiết kế "Tính tổng các số chẵn trong khoảng từ 1 đến N". Bước làm mịn nào dưới đây không phù hợp với phương pháp làm mịn dần?

  • A. Kiểm tra kết quả với một ví dụ cụ thể (ví dụ: N=10).
  • B. Khởi tạo biến tổng bằng 0.
  • C. Duyệt qua các số từ 1 đến N.
  • D. Kiểm tra xem mỗi số có phải là số chẵn hay không.

Câu 12: Khi áp dụng làm mịn dần, việc chia một bước thành các bước con cần tuân theo nguyên tắc nào?

  • A. Mỗi bước con phải phức tạp hơn bước cha.
  • B. Các bước con phải được thực hiện song song.
  • C. Tổng số bước con phải là số chẵn.
  • D. Các bước con phải chi tiết hơn bước cha và khi kết hợp lại thì hoàn thành chức năng của bước cha.

Câu 13: Phương pháp làm mịn dần giúp ích gì cho việc quản lý dự án phần mềm lớn?

  • A. Giảm thiểu số lượng lập trình viên cần thiết.
  • B. Loại bỏ hoàn toàn nhu cầu kiểm thử.
  • C. Giúp chia nhỏ công việc thành các phần nhỏ hơn, dễ quản lý và phân công cho nhóm.
  • D. Tự động tạo ra tài liệu hướng dẫn sử dụng chương trình.

Câu 14: Khi thiết kế thuật toán "Đếm số cặp nghịch đảo trong dãy A", bước tổng quát là "Đếm cặp nghịch đảo". Một bước làm mịn đầu tiên có thể là "Duyệt qua tất cả các cặp chỉ số (i, j) thỏa mãn i < j". Bước làm mịn tiếp theo cho "Kiểm tra cặp (i, j)" sẽ là gì?

  • A. Kiểm tra xem i có lớn hơn j không.
  • B. So sánh giá trị A[i] và A[j].
  • C. Hoán đổi vị trí của A[i] và A[j].
  • D. Tính tổng A[i] và A[j].

Câu 15: Xét một quy trình làm mịn dần cho bài toán "Xử lý đơn hàng trực tuyến". Bước 1: "Nhận đơn hàng". Bước 1.1: "Kiểm tra thông tin khách hàng". Bước 1.2: "Kiểm tra thông tin sản phẩm". Bước 1.3: "Tính tổng tiền". Bước làm mịn tiếp theo cho Bước 1.1 "Kiểm tra thông tin khách hàng" có thể là gì?

  • A. Đóng gói sản phẩm.
  • B. Gửi email xác nhận đơn hàng.
  • C. Xác minh địa chỉ giao hàng và số điện thoại liên lạc.
  • D. Cập nhật số lượng tồn kho của sản phẩm.

Câu 16: Phương pháp làm mịn dần giúp cải thiện khả năng bảo trì chương trình như thế nào?

  • A. Làm cho cấu trúc chương trình rõ ràng, dễ hiểu và dễ sửa đổi từng phần.
  • B. Tự động cập nhật phiên bản mới của chương trình.
  • C. Giảm thiểu hoàn toàn các lỗi phát sinh sau khi triển khai.
  • D. Chỉ áp dụng cho các lỗi liên quan đến hiệu suất.

Câu 17: Điểm khác biệt cốt lõi giữa phương pháp làm mịn dần và việc "viết code tùy hứng" (code without planning) là gì?

  • A. Làm mịn dần chỉ sử dụng cho bài toán lớn, còn viết code tùy hứng cho bài toán nhỏ.
  • B. Làm mịn dần là quá trình thiết kế có cấu trúc, có kế hoạch, còn viết code tùy hứng thì không.
  • C. Làm mịn dần chỉ dùng pseudocode, còn viết code tùy hứng dùng ngôn ngữ lập trình.
  • D. Làm mịn dần không bao giờ gặp lỗi, còn viết code tùy hứng thì có.

Câu 18: Khi nào thì việc áp dụng phương pháp làm mịn dần trở nên đặc biệt hữu ích?

  • A. Khi giải quyết các bài toán phức tạp hoặc thiết kế các chương trình lớn.
  • B. Khi bài toán chỉ yêu cầu một vài dòng mã lệnh đơn giản.
  • C. Khi chỉ có một người làm việc trên dự án.
  • D. Khi muốn hoàn thành chương trình nhanh nhất có thể mà không cần quan tâm cấu trúc.

Câu 19: Xét bước "Tìm kiếm sách theo tiêu đề". Khi làm mịn bước này, bạn có thể chi tiết hóa thành các bước con nào?

  • A. Thêm một cuốn sách mới vào danh sách.
  • B. Nhận tiêu đề cần tìm, duyệt danh sách sách, so sánh tiêu đề, trả về kết quả.
  • C. Sắp xếp danh sách sách theo tên tác giả.
  • D. Đếm tổng số sách trong thư viện.

Câu 20: Trong bối cảnh làm mịn dần, "mức trừu tượng" của một bước thiết kế thể hiện điều gì?

  • A. Số lượng mã lệnh cần viết cho bước đó.
  • B. Thời gian cần thiết để hoàn thành bước đó.
  • C. Mức độ khó khăn trong việc hiểu bước đó.
  • D. Mức độ tổng quát hay chi tiết của thao tác được mô tả trong bước đó.

Câu 21: Một trong những thách thức khi áp dụng phương pháp làm mịn dần là gì?

  • A. Xác định mức độ chi tiết phù hợp cho từng bước ở mỗi cấp độ.
  • B. Phương pháp này không áp dụng được cho bất kỳ bài toán nào.
  • C. Luôn luôn cần phải sử dụng một công cụ phần mềm đặc biệt.
  • D. Không thể sửa đổi thiết kế sau khi đã bắt đầu làm mịn.

Câu 22: Giả sử bạn có bước thiết kế "Lưu dữ liệu vào tệp". Bước làm mịn tiếp theo có thể liên quan đến khía cạnh nào?

  • A. Hiển thị dữ liệu lên màn hình.
  • B. Mở tệp ở chế độ ghi, ghi dữ liệu, đóng tệp.
  • C. Sắp xếp dữ liệu trước khi lưu.
  • D. Xóa tệp hiện có.

Câu 23: Một trong những nguyên tắc của phương pháp làm mịn dần là gì?

  • A. Các bước thiết kế phải được thực hiện ngẫu nhiên.
  • B. Bắt đầu từ các chi tiết nhỏ nhất và gộp lại.
  • C. Mỗi bước mới là sự chi tiết hóa của một bước ở mức trừu tượng cao hơn.
  • D. Chỉ tập trung vào việc viết mã nhanh nhất có thể.

Câu 24: Khi làm việc nhóm để thiết kế một chương trình lớn bằng phương pháp làm mịn dần, việc phân chia công việc thường dựa trên cơ sở nào?

  • A. Ngẫu nhiên gán việc cho từng người.
  • B. Dựa trên thời gian rảnh của từng thành viên.
  • C. Chỉ giao các công việc dễ cho người ít kinh nghiệm.
  • D. Dựa trên các bài toán con/mô đun được xác định trong quá trình làm mịn.

Câu 25: Giả sử bạn đang làm mịn bước "Xử lý dữ liệu nhập từ người dùng". Bước làm mịn nào dưới đây tập trung vào việc làm sạch dữ liệu?

  • A. Lưu dữ liệu vào cơ sở dữ liệu.
  • B. Hiển thị dữ liệu lên màn hình.
  • C. Loại bỏ các ký tự đặc biệt hoặc khoảng trắng thừa từ dữ liệu nhập.
  • D. Tính toán thống kê từ dữ liệu.

Câu 26: Trong phương pháp làm mịn dần, việc sử dụng ngôn ngữ tự nhiên, mã giả (pseudocode) hoặc sơ đồ khối ở các bước đầu tiên có mục đích gì?

  • A. Mô tả giải pháp ở mức trừu tượng, độc lập với ngôn ngữ lập trình cụ thể.
  • B. Kiểm tra lỗi cú pháp của chương trình.
  • C. Tự động tạo ra mã lệnh hoàn chỉnh.
  • D. Chỉ để làm tài liệu cho người khác đọc.

Câu 27: Xét bài toán "Vẽ một ngôi nhà bằng đồ họa máy tính". Bước tổng quát là "Vẽ ngôi nhà". Bước làm mịn đầu tiên có thể là "Vẽ thân nhà và vẽ mái nhà". Bước làm mịn tiếp theo cho "Vẽ thân nhà" có thể là gì?

  • A. Vẽ hàng rào quanh nhà.
  • B. Chọn màu sơn cho mái nhà.
  • C. Tính diện tích ngôi nhà.
  • D. Vẽ một hình chữ nhật làm thân nhà.

Câu 28: Phương pháp làm mịn dần giúp giảm thiểu rủi ro trong quá trình phát triển phần mềm như thế nào?

  • A. Đảm bảo chương trình không bao giờ bị lỗi.
  • B. Giúp phát hiện sớm các vấn đề và sự phức tạp trong quá trình thiết kế.
  • C. Tự động tạo bản sao lưu mã nguồn.
  • D. Chỉ sử dụng các thư viện đã được kiểm chứng.

Câu 29: Trong một quy trình làm mịn dần, bước "Xử lý ngoại lệ" (ví dụ: dữ liệu nhập không hợp lệ) nên được xem xét ở cấp độ nào?

  • A. Chỉ ở bước tổng quát nhất (bước đầu tiên).
  • B. Chỉ ở mức chi tiết cuối cùng, khi đã viết xong mã.
  • C. Ở các cấp độ làm mịn trung gian, khi các thao tác chính được chi tiết hóa.
  • D. Không cần xem xét trong quá trình thiết kế, chỉ xử lý khi chương trình chạy thực tế.

Câu 30: Bạn được giao nhiệm vụ thiết kế thuật toán tìm đường đi ngắn nhất giữa hai điểm trên bản đồ. Bước làm mịn đầu tiên theo phương pháp làm mịn dần sẽ là gì?

  • A. Biểu diễn bản đồ dưới dạng cấu trúc dữ liệu phù hợp (ví dụ: đồ thị).
  • B. Chọn ngôn ngữ lập trình để viết thuật toán.
  • C. Kiểm tra xem điểm bắt đầu và kết thúc có tồn tại không.
  • D. Vẽ bản đồ lên màn hình.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình có bản chất là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết bài toán 'Thiết kế chương trình quản lý thư viện', bước đầu tiên ở mức tổng quát nhất thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 3: Giả sử bạn đang ở bước 'Xử lý yêu cầu mượn sách' trong thiết kế chương trình quản lý thư viện. Theo phương pháp làm mịn dần, bước tiếp theo bạn nên làm gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 4: Lợi ích chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 5: Trong quá trình làm mịn dần, làm thế nào để biết khi nào một bước thiết kế đã đủ chi tiết để dừng lại và chuyển sang viết mã?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 6: Xét bài toán 'Đếm số lần xuất hiện của mỗi từ trong một đoạn văn bản'. Nếu bước tổng quát là 'Đếm từ', thì một bước làm mịn đầu tiên hợp lý sẽ là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 7: Giả sử một bước trong thiết kế là 'Tìm kiếm một phần tử trong danh sách'. Bước làm mịn nào dưới đây thể hiện kỹ thuật tìm kiếm tuần tự?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 8: Khi làm mịn một bước, mục tiêu là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 9: Phương pháp làm mịn dần thường được gọi là phương pháp thiết kế từ trên xuống (Top-Down Design) vì lý do nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 10: Trong thuật toán sắp xếp chèn, bước tổng quát là 'Sắp xếp dãy số'. Một bước làm mịn đầu tiên là 'Duyệt qua từng phần tử từ phần tử thứ hai'. Bước làm mịn tiếp theo cho 'Xử lý phần tử hiện tại' (phần tử đang duyệt) sẽ là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 11: Giả sử bạn có bước thiết kế 'Tính tổng các số chẵn trong khoảng từ 1 đến N'. Bước làm mịn nào dưới đây *không* phù hợp với phương pháp làm mịn dần?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 12: Khi áp dụng làm mịn dần, việc chia một bước thành các bước con cần tuân theo nguyên tắc nào?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 13: Phương pháp làm mịn dần giúp ích gì cho việc quản lý dự án phần mềm lớn?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 14: Khi thiết kế thuật toán 'Đếm số cặp nghịch đảo trong dãy A', bước tổng quát là 'Đếm cặp nghịch đảo'. Một bước làm mịn đầu tiên có thể là 'Duyệt qua tất cả các cặp chỉ số (i, j) thỏa mãn i < j'. Bước làm mịn tiếp theo cho 'Kiểm tra cặp (i, j)' sẽ là gì?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 15: Xét một quy trình làm mịn dần cho bài toán 'Xử lý đơn hàng trực tuyến'. Bước 1: 'Nhận đơn hàng'. Bước 1.1: 'Kiểm tra thông tin khách hàng'. Bước 1.2: 'Kiểm tra thông tin sản phẩm'. Bước 1.3: 'Tính tổng tiền'. Bước làm mịn tiếp theo cho Bước 1.1 'Kiểm tra thông tin khách hàng' có thể là gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 16: Phương pháp làm mịn dần giúp cải thiện khả năng bảo trì chương trình như thế nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 17: Điểm khác biệt cốt lõi giữa phương pháp làm mịn dần và việc 'viết code tùy hứng' (code without planning) là gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 18: Khi nào thì việc áp dụng phương pháp làm mịn dần trở nên đặc biệt hữu ích?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 19: Xét bước 'Tìm kiếm sách theo tiêu đề'. Khi làm mịn bước này, bạn có thể chi tiết hóa thành các bước con nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 20: Trong bối cảnh làm mịn dần, 'mức trừu tượng' của một bước thiết kế thể hiện điều gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 21: Một trong những thách thức khi áp dụng phương pháp làm mịn dần là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 22: Giả sử bạn có bước thiết kế 'Lưu dữ liệu vào tệp'. Bước làm mịn tiếp theo có thể liên quan đến khía cạnh nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 23: Một trong những nguyên tắc của phương pháp làm mịn dần là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 24: Khi làm việc nhóm để thiết kế một chương trình lớn bằng phương pháp làm mịn dần, việc phân chia công việc thường dựa trên cơ sở nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 25: Giả sử bạn đang làm mịn bước 'Xử lý dữ liệu nhập từ người dùng'. Bước làm mịn nào dưới đây tập trung vào việc làm sạch dữ liệu?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 26: Trong phương pháp làm mịn dần, việc sử dụng ngôn ngữ tự nhiên, mã giả (pseudocode) hoặc sơ đồ khối ở các bước đầu tiên có mục đích gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 27: Xét bài toán 'Vẽ một ngôi nhà bằng đồ họa máy tính'. Bước tổng quát là 'Vẽ ngôi nhà'. Bước làm mịn đầu tiên có thể là 'Vẽ thân nhà và vẽ mái nhà'. Bước làm mịn tiếp theo cho 'Vẽ thân nhà' có thể là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 28: Phương pháp làm mịn dần giúp giảm thiểu rủi ro trong quá trình phát triển phần mềm như thế nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 29: Trong một quy trình làm mịn dần, bước 'Xử lý ngoại lệ' (ví dụ: dữ liệu nhập không hợp lệ) nên được xem xét ở cấp độ nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 01

Câu 30: Bạn được giao nhiệm vụ thiết kế thuật toán tìm đường đi ngắn nhất giữa hai điểm trên bản đồ. Bước làm mịn đầu tiên theo phương pháp làm mịn dần sẽ là gì?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 02

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 02 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình tập trung vào nguyên tắc cốt lõi nào?

  • A. Viết mã chương trình càng nhanh càng tốt.
  • B. Chia nhỏ vấn đề lớn thành các vấn đề con và chi tiết hóa từng bước giải.
  • C. Kiểm tra lỗi cú pháp ngay trong quá trình viết.
  • D. Sử dụng các thư viện có sẵn để giảm thiểu công sức.

Câu 2: Khi bắt đầu thiết kế một chương trình phức tạp bằng phương pháp làm mịn dần, bước đầu tiên thường là gì?

  • A. Viết các hàm xử lý dữ liệu chi tiết.
  • B. Xác định cấu trúc dữ liệu sẽ sử dụng.
  • C. Thiết kế giao diện người dùng.
  • D. Xác định mục tiêu tổng thể của chương trình và các yêu cầu cơ bản.

Câu 3: Giả sử bạn đang thiết kế chương trình quản lý danh sách học sinh. Bước làm mịn ban đầu là "Xử lý thông tin học sinh". Bước nào sau đây là một refinement hợp lý cho bước đó?

  • A. Thêm học sinh mới vào danh sách.
  • B. Sử dụng cơ sở dữ liệu SQL.
  • C. Hiển thị danh sách học sinh bằng bảng.
  • D. Tính điểm trung bình của học sinh.

Câu 4: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Tự động sinh mã nguồn chương trình.
  • B. Giảm đáng kể thời gian chạy của chương trình cuối cùng.
  • C. Làm cho quá trình thiết kế trở nên có cấu trúc, dễ hiểu và dễ chuyển thành mã lệnh.
  • D. Đảm bảo chương trình không có bất kỳ lỗi nào.

Câu 5: Quá trình làm mịn dần kết thúc khi nào?

  • A. Các bước đã đủ chi tiết để có thể chuyển trực tiếp thành các câu lệnh của ngôn ngữ lập trình.
  • B. Khi đã chia bài toán thành đúng 5 cấp độ.
  • C. Khi người thiết kế cảm thấy không thể chi tiết hóa thêm được nữa.
  • D. Sau khi đã kiểm tra tất cả các trường hợp ngoại lệ.

Câu 6: Trong ngữ cảnh của thuật toán sắp xếp chèn, bước "Chèn phần tử hiện tại vào đúng vị trí trong dãy đã sắp xếp" là một bước làm mịn từ ý tưởng tổng quát "Duyệt qua mảng và sắp xếp". Để làm mịn bước "Chèn phần tử hiện tại vào đúng vị trí", chúng ta cần thực hiện những thao tác nào ở mức chi tiết hơn?

  • A. So sánh phần tử hiện tại với tất cả các phần tử còn lại trong mảng.
  • B. Lưu giá trị phần tử hiện tại, dịch chuyển các phần tử lớn hơn nó sang phải để tạo chỗ trống, sau đó đặt giá trị đã lưu vào chỗ trống đó.
  • C. Đổi chỗ phần tử hiện tại với phần tử nhỏ nhất trong dãy đã sắp xếp.
  • D. Chèn phần tử hiện tại vào đầu dãy đã sắp xếp.

Câu 7: Tại sao việc chia nhỏ vấn đề trong phương pháp làm mịn dần giúp giảm thiểu sai sót?

  • A. Mỗi bước con trở nên đơn giản và dễ tập trung giải quyết hơn.
  • B. Chương trình tự động kiểm tra lỗi sau mỗi lần làm mịn.
  • C. Nó loại bỏ hoàn toàn nhu cầu kiểm thử.
  • D. Giúp viết mã lệnh nhanh hơn, ít thời gian phạm lỗi.

Câu 8: Khi thiết kế một thuật toán đếm số cặp nghịch đảo (i, j) sao cho i < j và A[i] > A[j] trong một mảng A, bước làm mịn "Duyệt qua tất cả các cặp phần tử" cần được chi tiết hóa như thế nào?

  • A. Sử dụng một vòng lặp duyệt qua từng phần tử của mảng.
  • B. Sử dụng hai vòng lặp lồng nhau, cả hai đều duyệt từ đầu đến cuối mảng.
  • C. Sử dụng hai vòng lặp lồng nhau: vòng ngoài duyệt chỉ số i từ đầu đến n-2, vòng trong duyệt chỉ số j từ i+1 đến n-1.
  • D. Sắp xếp mảng trước rồi đếm các cặp có A[i] > A[j].

Câu 9: Một trong những đặc điểm của các bước ở mức độ chi tiết cuối cùng (sẵn sàng để viết mã) trong phương pháp làm mịn dần là gì?

  • A. Mỗi bước mô tả một chức năng rất lớn của chương trình.
  • B. Các bước vẫn còn mang tính trừu tượng cao.
  • C. Mỗi bước yêu cầu sự phân tích phức tạp trước khi viết mã.
  • D. Mỗi bước tương ứng trực tiếp với một hoặc một vài câu lệnh cơ bản trong ngôn ngữ lập trình.

Câu 10: Phương pháp làm mịn dần còn được gọi là phương pháp nào khác?

  • A. Thiết kế từ trên xuống (Top-down design).
  • B. Thiết kế từ dưới lên (Bottom-up design).
  • C. Thiết kế hướng đối tượng (Object-oriented design).
  • D. Lập trình cực hạn (Extreme programming).

Câu 11: Khi làm mịn một bước "Xử lý dữ liệu đầu vào", một bước chi tiết hơn có thể là "Đọc dữ liệu từ tệp". Để làm mịn tiếp bước "Đọc dữ liệu từ tệp", ta cần xem xét những gì?

  • A. Chỉ cần ghi lại tên tệp.
  • B. Xác định đường dẫn tệp, định dạng dữ liệu trong tệp và cách xử lý lỗi đọc tệp.
  • C. Quyết định xem dữ liệu có cần được lưu trữ tạm thời trong bộ nhớ hay không.
  • D. Kiểm tra xem dữ liệu có chứa số âm hay không.

Câu 12: Điều nào sau đây không phải là đặc điểm của một bước làm mịn tốt?

  • A. Nó là một phần nhỏ hơn của bước cha.
  • B. Nó mô tả một hành động cụ thể hơn.
  • C. Nó mô tả nhiều chức năng không liên quan đến nhau.
  • D. Nó giúp tiến gần hơn đến mã lệnh thực tế.

Câu 13: Phương pháp làm mịn dần giúp ích như thế nào trong việc quản lý dự án phát triển phần mềm theo nhóm?

  • A. Nó cho phép tất cả thành viên viết mã cùng lúc mà không cần kế hoạch.
  • B. Nó tự động giải quyết xung đột giữa các thành viên.
  • C. Nó chỉ hữu ích cho các dự án cá nhân.
  • D. Nó giúp chia nhỏ công việc thành các phần có thể phân công cho các thành viên khác nhau.

Câu 14: Giả sử bạn có bước "Tính toán kết quả". Để làm mịn bước này, bạn cần xem xét những yếu tố nào?

  • A. Công thức tính toán, dữ liệu đầu vào cần thiết và định dạng kết quả.
  • B. Màu sắc của giao diện hiển thị kết quả.
  • C. Tên của biến sẽ lưu trữ kết quả.
  • D. Cách lưu trữ kết quả vào cơ sở dữ liệu.

Câu 15: Điều nào sau đây mô tả đúng mối quan hệ giữa các bước ở các cấp độ làm mịn khác nhau?

  • A. Các bước ở cấp độ sau thay thế hoàn toàn các bước ở cấp độ trước.
  • B. Các bước ở cấp độ sau là sự chi tiết hóa, làm rõ nghĩa cho các bước ở cấp độ trước.
  • C. Các bước ở các cấp độ khác nhau là hoàn toàn độc lập.
  • D. Các bước ở cấp độ trước là tổng của các bước ở cấp độ sau.

Câu 16: Trong thuật toán sắp xếp chèn, khi chèn phần tử A[i] vào dãy A[0...i-1] đã sắp xếp, việc dịch chuyển các phần tử lớn hơn A[i] sang phải được thực hiện bằng cách nào ở mức độ chi tiết?

  • A. Sử dụng một lệnh đổi chỗ duy nhất.
  • B. Sao chép toàn bộ dãy A[0...i-1] sang một vị trí mới.
  • C. Sử dụng vòng lặp duyệt từ đầu dãy đến i-1 để tìm vị trí.
  • D. Sử dụng vòng lặp lùi từ i-1 về đầu dãy, so sánh phần tử hiện tại với giá trị cần chèn và sao chép nếu cần.

Câu 17: Giả sử bạn có bước làm mịn "Lưu kết quả vào bộ nhớ lâu dài". Bước này có thể được làm mịn thành những bước nào tùy thuộc vào yêu cầu cụ thể?

  • A. Tính toán lại kết quả.
  • B. Hiển thị kết quả lên màn hình.
  • C. Lưu kết quả vào tệp tin hoặc cơ sở dữ liệu.
  • D. Xóa kết quả sau khi chương trình kết thúc.

Câu 18: Điền vào chỗ trống: Phương pháp làm mịn dần giúp chuyển đổi ý tưởng thiết kế từ mức độ ______ sang mức độ ______.

  • A. tổng quát / chi tiết
  • B. chi tiết / tổng quát
  • C. đúng / sai
  • D. nhanh / chậm

Câu 19: Khi thiết kế chương trình theo phương pháp làm mịn dần, việc xác định các cấu trúc điều khiển (như if, for, while) thường diễn ra ở cấp độ làm mịn nào?

  • A. Mức độ tổng quát nhất, ngay sau khi xác định yêu cầu.
  • B. Chỉ khi toàn bộ thiết kế đã hoàn thành.
  • C. Ở giữa quá trình làm mịn, khi xác định các mô-đun chính.
  • D. Ở các cấp độ làm mịn chi tiết cuối cùng, gần với mã lệnh thực tế.

Câu 20: Một trong những thách thức khi áp dụng phương pháp làm mịn dần là gì?

  • A. Phương pháp này yêu cầu phải biết trước toàn bộ giải pháp từ đầu.
  • B. Xác định mức độ chi tiết phù hợp cho mỗi bước và biết khi nào dừng quá trình làm mịn có thể khó khăn.
  • C. Nó bắt buộc phải sử dụng một ngôn ngữ lập trình cụ thể.
  • D. Nó không cho phép sửa đổi thiết kế sau khi đã bắt đầu.

Câu 21: Hãy xem xét bước làm mịn "Tìm kiếm thông tin trong danh sách". Bước này có thể được làm mịn thành những thuật toán tìm kiếm cụ thể nào?

  • A. Tìm kiếm tuần tự hoặc Tìm kiếm nhị phân.
  • B. Sắp xếp nổi bọt hoặc Sắp xếp chọn.
  • C. Đếm số phần tử hoặc Tính tổng các phần tử.
  • D. Thêm phần tử hoặc Xóa phần tử.

Câu 22: Việc sử dụng phương pháp làm mịn dần có giúp cải thiện khả năng tái sử dụng mã (code reusability) không? Tại sao?

  • A. Có, vì nó khuyến khích chia chương trình thành các mô-đun độc lập, có thể tái sử dụng.
  • B. Không, vì mỗi chương trình được thiết kế riêng biệt.
  • C. Chỉ khi sử dụng một ngôn ngữ lập trình cụ thể.
  • D. Không liên quan đến khả năng tái sử dụng mã.

Câu 23: Giả sử bạn đang làm mịn bước "Xử lý ngoại lệ". Bước này có thể được chi tiết hóa dựa trên những loại ngoại lệ nào có thể xảy ra?

  • A. Màu sắc của thông báo lỗi.
  • B. Tốc độ xử lý ngoại lệ.
  • C. Các loại lỗi hoặc tình huống bất thường có thể xảy ra (ví dụ: dữ liệu sai định dạng, tệp không tồn tại).
  • D. Ngôn ngữ lập trình được sử dụng để xử lý ngoại lệ.

Câu 24: Khi làm mịn một bước, điều quan trọng là phải duy trì sự nhất quán. Nhất quán ở đây có nghĩa là gì?

  • A. Sử dụng cùng một số lượng bước con cho mỗi bước cha.
  • B. Các bước con phải là sự chi tiết hóa hợp lý và đầy đủ cho bước cha.
  • C. Sử dụng cùng một kiểu cấu trúc điều khiển (ví dụ: chỉ dùng `if`, không dùng `while`).
  • D. Tên của các bước con phải bắt đầu bằng cùng một chữ cái.

Câu 25: Phương pháp làm mịn dần đặc biệt hiệu quả cho loại bài toán nào?

  • A. Các bài toán phức tạp, có thể chia thành nhiều phần nhỏ hơn.
  • B. Các bài toán rất đơn giản, chỉ cần vài dòng mã.
  • C. Các bài toán chỉ liên quan đến tính toán số học.
  • D. Các bài toán đã có sẵn mã nguồn hoàn chỉnh.

Câu 26: Giả sử bạn có bước làm mịn "Hiển thị kết quả". Bước này có thể được làm mịn tùy thuộc vào phương tiện hiển thị. Nếu hiển thị lên màn hình giao diện đồ họa (GUI), bước làm mịn tiếp theo có thể là gì?

  • A. Lưu kết quả vào tệp.
  • B. Tính toán lại kết quả.
  • C. In kết quả ra máy in.
  • D. Thiết kế giao diện hiển thị (ví dụ: tạo nhãn, ô văn bản) và cập nhật dữ liệu vào đó.

Câu 27: Trong phương pháp làm mịn dần, việc tài liệu hóa (ghi chép lại) các bước làm mịn có ý nghĩa gì?

  • A. Làm cho chương trình chạy nhanh hơn.
  • B. Giảm dung lượng bộ nhớ chương trình.
  • C. Giúp hiểu rõ cấu trúc thiết kế, hỗ trợ bảo trì và phát triển.
  • D. Là yêu cầu bắt buộc của mọi ngôn ngữ lập trình.

Câu 28: Khi làm mịn một bước, ví dụ "Xử lý danh sách", bạn nhận ra rằng một phần của việc xử lý (ví dụ: "Sắp xếp danh sách") có thể được thực hiện bởi một hàm hoặc mô-đun đã có sẵn hoặc sẽ được viết riêng. Điều này liên quan đến khái niệm nào trong thiết kế chương trình?

  • A. Thiết kế theo mô-đun.
  • B. Kiểm thử đơn vị.
  • C. Tối ưu hóa mã nguồn.
  • D. Phân tích yêu cầu người dùng.

Câu 29: So với phương pháp viết mã "ngẫu hứng" (code-and-fix), phương pháp làm mịn dần giúp phát hiện lỗi ở giai đoạn nào sớm hơn?

  • A. Giai đoạn kiểm thử cuối cùng.
  • B. Giai đoạn thiết kế.
  • C. Giai đoạn bảo trì.
  • D. Giai đoạn triển khai.

Câu 30: Bước nào sau đây có khả năng là bước cuối cùng trong quá trình làm mịn dần, sẵn sàng để chuyển thành mã lệnh?

  • A. Xử lý dữ liệu.
  • B. Tính toán kết quả cuối cùng.
  • C. Kiểm tra điều kiện đăng nhập người dùng.
  • D. Gán giá trị 0 cho biến "tong".

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình tập trung vào nguyên tắc cốt lõi nào?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 2: Khi bắt đầu thiết kế một chương trình phức tạp bằng phương pháp làm mịn dần, bước đầu tiên thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 3: Giả sử bạn đang thiết kế chương trình quản lý danh sách học sinh. Bước làm mịn ban đầu là 'Xử lý thông tin học sinh'. Bước nào sau đây là một *refinement* hợp lý cho bước đó?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 4: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 5: Quá trình làm mịn dần kết thúc khi nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 6: Trong ngữ cảnh của thuật toán sắp xếp chèn, bước 'Chèn phần tử hiện tại vào đúng vị trí trong dãy đã sắp xếp' là một bước làm mịn từ ý tưởng tổng quát 'Duyệt qua mảng và sắp xếp'. Để làm mịn bước 'Chèn phần tử hiện tại vào đúng vị trí', chúng ta cần thực hiện những thao tác nào ở mức chi tiết hơn?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 7: Tại sao việc chia nhỏ vấn đề trong phương pháp làm mịn dần giúp giảm thiểu sai sót?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 8: Khi thiết kế một thuật toán đếm số cặp nghịch đảo (i, j) sao cho i < j và A[i] > A[j] trong một mảng A, bước làm mịn 'Duyệt qua tất cả các cặp phần tử' cần được chi tiết hóa như thế nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 9: Một trong những đặc điểm của các bước ở mức độ chi tiết cuối cùng (sẵn sàng để viết mã) trong phương pháp làm mịn dần là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 10: Phương pháp làm mịn dần còn được gọi là phương pháp nào khác?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 11: Khi làm mịn một bước 'Xử lý dữ liệu đầu vào', một bước chi tiết hơn có thể là 'Đọc dữ liệu từ tệp'. Để làm mịn tiếp bước 'Đọc dữ liệu từ tệp', ta cần xem xét những gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 12: Điều nào sau đây *không phải* là đặc điểm của một bước làm mịn tốt?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 13: Phương pháp làm mịn dần giúp ích như thế nào trong việc quản lý dự án phát triển phần mềm theo nhóm?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 14: Giả sử bạn có bước 'Tính toán kết quả'. Để làm mịn bước này, bạn cần xem xét những yếu tố nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 15: Điều nào sau đây mô tả đúng mối quan hệ giữa các bước ở các cấp độ làm mịn khác nhau?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 16: Trong thuật toán sắp xếp chèn, khi chèn phần tử A[i] vào dãy A[0...i-1] đã sắp xếp, việc dịch chuyển các phần tử lớn hơn A[i] sang phải được thực hiện bằng cách nào ở mức độ chi tiết?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 17: Giả sử bạn có bước làm mịn 'Lưu kết quả vào bộ nhớ lâu dài'. Bước này có thể được làm mịn thành những bước nào tùy thuộc vào yêu cầu cụ thể?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 18: Điền vào chỗ trống: Phương pháp làm mịn dần giúp chuyển đổi ý tưởng thiết kế từ mức độ ______ sang mức độ ______.

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 19: Khi thiết kế chương trình theo phương pháp làm mịn dần, việc xác định các cấu trúc điều khiển (như if, for, while) thường diễn ra ở cấp độ làm mịn nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 20: Một trong những thách thức khi áp dụng phương pháp làm mịn dần là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 21: Hãy xem xét bước làm mịn 'Tìm kiếm thông tin trong danh sách'. Bước này có thể được làm mịn thành những thuật toán tìm kiếm cụ thể nào?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 22: Việc sử dụng phương pháp làm mịn dần có giúp cải thiện khả năng tái sử dụng mã (code reusability) không? Tại sao?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 23: Giả sử bạn đang làm mịn bước 'Xử lý ngoại lệ'. Bước này có thể được chi tiết hóa dựa trên những loại ngoại lệ nào có thể xảy ra?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 24: Khi làm mịn một bước, điều quan trọng là phải duy trì sự nhất quán. Nhất quán ở đây có nghĩa là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 25: Phương pháp làm mịn dần đặc biệt hiệu quả cho loại bài toán nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 26: Giả sử bạn có bước làm mịn 'Hiển thị kết quả'. Bước này có thể được làm mịn tùy thuộc vào phương tiện hiển thị. Nếu hiển thị lên màn hình giao diện đồ họa (GUI), bước làm mịn tiếp theo có thể là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 27: Trong phương pháp làm mịn dần, việc tài liệu hóa (ghi chép lại) các bước làm mịn có ý nghĩa gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 28: Khi làm mịn một bước, ví dụ 'Xử lý danh sách', bạn nhận ra rằng một phần của việc xử lý (ví dụ: 'Sắp xếp danh sách') có thể được thực hiện bởi một hàm hoặc mô-đun đã có sẵn hoặc sẽ được viết riêng. Điều này liên quan đến khái niệm nào trong thiết kế chương trình?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 29: So với phương pháp viết mã 'ngẫu hứng' (code-and-fix), phương pháp làm mịn dần giúp phát hiện lỗi ở giai đoạn nào sớm hơn?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 02

Câu 30: Bước nào sau đây có khả năng là bước cuối cùng trong quá trình làm mịn dần, sẵn sàng để chuyển thành mã lệnh?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 03

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 03 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được hiểu là quá trình nào sau đây?

  • A. Viết mã chương trình từ đầu đến cuối mà không cần kế hoạch trước.
  • B. Kiểm tra và sửa lỗi cú pháp trong mã nguồn.
  • C. Chia nhỏ bài toán lớn thành các bài toán con, sau đó tiếp tục chia nhỏ các bài toán con cho đến khi đủ chi tiết để lập trình.
  • D. Tối ưu hóa tốc độ thực thi của chương trình đã viết.

Câu 2: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Giảm thiểu thời gian chạy của chương trình.
  • B. Giúp lập trình viên quản lý được sự phức tạp của bài toán bằng cách tập trung vào từng phần nhỏ.
  • C. Tự động tạo ra giao diện người dùng cho chương trình.
  • D. Loại bỏ hoàn toàn khả năng xảy ra lỗi logic trong chương trình.

Câu 3: Khi áp dụng phương pháp làm mịn dần để thiết kế chương trình "Quản lý điểm học sinh", bước làm mịn đầu tiên (mức tổng quan nhất) thường là gì?

  • A. Viết hàm tính điểm trung bình.
  • B. Thiết kế cơ sở dữ liệu lưu trữ điểm.
  • C. Tạo giao diện nhập điểm cho giáo viên.
  • D. Xử lý dữ liệu điểm học sinh.

Câu 4: Tiếp theo bước "Xử lý dữ liệu điểm học sinh" ở Câu 3, một bước làm mịn hợp lý có thể là chia thành các công việc con nào?

  • A. Nhập điểm, Tính toán kết quả học tập, Xuất báo cáo.
  • B. Kiểm tra lỗi nhập liệu, Sửa lỗi tính toán.
  • C. Viết vòng lặp, Sử dụng câu lệnh điều kiện.
  • D. Lưu điểm vào tệp tin, Đọc điểm từ tệp tin, Sao lưu dữ liệu.

Câu 5: Xét bước làm mịn "Tính toán kết quả học tập" trong chương trình quản lý điểm. Bước này có thể được làm mịn thêm thành các công việc chi tiết hơn nào?

  • A. Mở tệp tin điểm, Đóng tệp tin điểm.
  • B. Hiển thị điểm lên màn hình, In điểm ra giấy.
  • C. Tính điểm trung bình môn, Tính điểm trung bình học kỳ, Xếp loại học lực.
  • D. Nhập điểm miệng, Nhập điểm 15 phút, Nhập điểm thi cuối kỳ.

Câu 6: Trong thuật toán sắp xếp chèn (Insertion Sort), bước làm mịn tổng quan nhất thường là gì?

  • A. Chia dãy thành hai nửa và sắp xếp từng nửa.
  • B. Duyệt qua từng phần tử của dãy (từ phần tử thứ hai) và chèn nó vào phần dãy đã sắp xếp.
  • C. Tìm phần tử nhỏ nhất trong dãy và đưa về đầu.
  • D. So sánh các cặp phần tử kề nhau và đổi chỗ nếu sai thứ tự.

Câu 7: Xét bước làm mịn "Chèn phần tử A[i] vào phần dãy đã sắp xếp" trong thuật toán sắp xếp chèn. Bước này có thể được làm mịn thành các thao tác chi tiết hơn nào?

  • A. So sánh A[i] với A[0] và đổi chỗ nếu cần.
  • B. Duyệt từ A[i-1] về A[0], nếu A[j] < A[i] thì dừng lại.
  • C. Duyệt từ A[0] đến A[i-1], nếu A[j] > A[i] thì đổi chỗ A[j] và A[i].
  • D. Lưu giá trị A[i], dịch chuyển các phần tử lớn hơn sang phải, chèn A[i] vào vị trí trống.

Câu 8: Khi làm mịn bước "Dịch chuyển các phần tử lớn hơn sang phải" trong thuật toán sắp xếp chèn, thao tác nào dưới đây là cần thiết?

  • A. So sánh giá trị cần chèn (value) với các phần tử A[j] (với j giảm dần từ i-1 về 0) và gán A[j+1] = A[j] nếu A[j] > value.
  • B. So sánh A[i] với A[j] (với j tăng dần từ 0 đến i-1) và gán A[j] = A[i] nếu A[j] < A[i].
  • C. Đổi chỗ A[i] với A[j] nếu A[i] < A[j] (với j từ 0 đến i-1).
  • D. Gán A[i+1] = A[i].

Câu 9: Giả sử bạn đang thiết kế chương trình "Đếm số cặp nghịch đảo trong một dãy số". Bước làm mịn đầu tiên (tổng quan) sẽ là gì?

  • A. Sắp xếp dãy số theo thứ tự tăng dần.
  • B. Tìm phần tử lớn nhất và nhỏ nhất trong dãy.
  • C. Duyệt qua tất cả các cặp phần tử (A[i], A[j]) với i < j và đếm số cặp thỏa mãn điều kiện nghịch đảo.
  • D. Tính tổng các phần tử trong dãy.

Câu 10: Xét bước làm mịn "Kiểm tra xem cặp (A[i], A[j]) với i < j có phải là cặp nghịch đảo không" trong thuật toán đếm cặp nghịch đảo. Điều kiện cụ thể để cặp này là nghịch đảo là gì?

  • A. A[i] < A[j] và i < j
  • B. A[i] > A[j] và i < j
  • C. A[i] < A[j] và i > j
  • D. A[i] > A[j] và i > j

Câu 11: Giả sử bạn đang làm mịn bước "Duyệt qua tất cả các cặp phần tử (A[i], A[j]) với i < j" trong thuật toán đếm cặp nghịch đảo. Cấu trúc vòng lặp nào sau đây thể hiện đúng bước này?

  • A. Vòng lặp ngoài cho i từ 0 đến n-1, vòng lặp trong cho j từ 0 đến n-1.
  • B. Vòng lặp ngoài cho i từ 0 đến n-1, vòng lặp trong cho j từ i về 0.
  • C. Vòng lặp ngoài cho i từ 0 đến n-2, vòng lặp trong cho j từ i+1 đến n-1.
  • D. Vòng lặp ngoài cho i từ n-1 về 0, vòng lặp trong cho j từ 0 đến i-1.

Câu 12: Bạn được yêu cầu thiết kế chương trình "Tính tổng các số chẵn từ 1 đến N". Áp dụng phương pháp làm mịn dần, bước nào sau đây là mức làm mịn chi tiết nhất (gần với mã lệnh)?

  • A. Duyệt qua các số từ 1 đến N.
  • B. Kiểm tra số nào là số chẵn.
  • C. Cộng các số chẵn tìm được vào tổng.
  • D. Kiểm tra xem số hiện tại có phải số chẵn không bằng phép chia lấy dư cho 2.

Câu 13: Một ưu điểm của phương pháp làm mịn dần là khả năng dễ dàng kiểm thử từng phần. Điều này được thể hiện như thế nào trong quá trình thiết kế?

  • A. Mỗi bước làm mịn có thể được coi như một module nhỏ và được kiểm thử độc lập trước khi kết hợp với các bước khác.
  • B. Phương pháp này tự động tạo ra các test case cho chương trình.
  • C. Chỉ cần kiểm thử chương trình sau khi đã viết xong toàn bộ mã lệnh.
  • D. Việc kiểm thử được thực hiện bởi người dùng cuối trong quá trình sử dụng.

Câu 14: Tại sao khi áp dụng làm mịn dần, ta nên bắt đầu từ mức tổng quan nhất trước khi đi vào chi tiết?

  • A. Để có thể viết mã lệnh nhanh chóng ngay từ đầu.
  • B. Để hiểu rõ bức tranh toàn cảnh của bài toán và xác định các thành phần chính trước khi tập trung vào chi tiết.
  • C. Để giảm thiểu số lượng biến cần sử dụng trong chương trình.
  • D. Vì các bước chi tiết thường dễ thực hiện hơn.

Câu 15: Trong quá trình làm mịn dần, mỗi bước làm mịn sẽ tạo ra một "mức" biểu diễn của bài toán. Mức biểu diễn này có đặc điểm gì so với mức trước đó?

  • A. Cụ thể và chi tiết hơn.
  • B. Trừu tượng và tổng quan hơn.
  • C. Hoàn toàn độc lập và không liên quan đến mức trước đó.
  • D. Chỉ thay đổi thứ tự thực hiện các bước.

Câu 16: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

  • A. Khi toàn bộ mã nguồn đã được viết xong.
  • B. Khi chương trình đã chạy thử thành công.
  • C. Khi đã vẽ xong sơ đồ khối cho toàn bộ thuật toán.
  • D. Khi tất cả các bước đã được chi tiết hóa đến mức có thể chuyển trực tiếp thành câu lệnh lập trình.

Câu 17: Xét bài toán "Tìm phần tử lớn nhất trong một dãy số". Bước làm mịn "Duyệt qua dãy số" có thể được làm mịn thành cấu trúc lập trình nào?

  • A. Vòng lặp (ví dụ: for hoặc while).
  • B. Câu lệnh điều kiện (if-else).
  • C. Hàm (function).
  • D. Gán giá trị cho biến.

Câu 18: Xét bài toán "Kiểm tra xem một số có phải số nguyên tố không". Bước làm mịn "Kiểm tra các ước số" có thể được làm mịn thành thao tác cụ thể nào?

  • A. Cộng các số từ 1 đến số đó.
  • B. Dùng phép chia lấy dư để kiểm tra xem số đó có chia hết cho các số trong một phạm vi nhất định hay không.
  • C. So sánh số đó với các số nguyên tố đã biết.
  • D. Nhân số đó với các số khác để xem có ra số ban đầu không.

Câu 19: Trong phương pháp làm mịn dần, việc xác định "đầu vào" và "đầu ra" của bài toán thường được thực hiện ở bước nào?

  • A. Bước đầu tiên (mức tổng quan nhất) khi phân tích bài toán.
  • B. Ở giữa quá trình làm mịn, khi đã chi tiết hóa một số bước.
  • C. Ở bước cuối cùng, sau khi đã viết mã xong.
  • D. Không cần thiết phải xác định rõ ràng đầu vào và đầu ra.

Câu 20: Một trong những nguyên tắc của làm mịn dần là mỗi bước làm mịn phải giữ được tính đúng đắn của bước trước đó. Điều này có nghĩa là gì?

  • A. Các bước làm mịn sau phải hoàn toàn khác biệt với các bước trước đó.
  • B. Các bước làm mịn sau có thể bỏ qua một số chi tiết của bước trước đó.
  • C. Tổng hợp các bước chi tiết ở mức sau phải thực hiện đúng chức năng của bước tổng quan ở mức trước đó.
  • D. Thứ tự thực hiện các bước có thể thay đổi tùy ý sau mỗi lần làm mịn.

Câu 21: Tại sao phương pháp làm mịn dần được gọi là "từ trên xuống" (Top-down)?

  • A. Vì nó yêu cầu viết mã lệnh từ dòng đầu tiên đến dòng cuối cùng.
  • B. Vì nó chỉ áp dụng cho các bài toán đơn giản.
  • C. Vì nó bắt đầu từ các chi tiết nhỏ nhặt nhất trước khi tổng hợp lại.
  • D. Vì nó bắt đầu từ ý tưởng tổng quan, trừu tượng nhất và dần dần chi tiết hóa thành các bước cụ thể.

Câu 22: Khi áp dụng làm mịn dần cho thuật toán sắp xếp chèn trên dãy A = [5, 2, 8, 1]. Sau khi chèn phần tử thứ hai (số 2) vào đúng vị trí trong phần đã sắp xếp [5], dãy A sẽ trở thành trạng thái nào?

  • A. [5, 2, 8, 1]
  • B. [2, 5, 1, 8]
  • C. [2, 5, 8, 1]
  • D. [1, 2, 5, 8]

Câu 23: Vẫn với dãy A = [5, 2, 8, 1] và thuật toán sắp xếp chèn. Sau khi chèn phần tử thứ ba (số 8) vào đúng vị trí trong phần đã sắp xếp [2, 5], dãy A sẽ trở thành trạng thái nào?

  • A. [2, 5, 8, 1]
  • B. [2, 8, 5, 1]
  • C. [8, 2, 5, 1]
  • D. [2, 1, 5, 8]

Câu 24: Vẫn với dãy A = [5, 2, 8, 1] và thuật toán sắp xếp chèn. Sau khi chèn phần tử thứ tư (số 1) vào đúng vị trí trong phần đã sắp xếp [2, 5, 8], dãy A sẽ trở thành trạng thái nào?

  • A. [2, 5, 8, 1]
  • B. [1, 5, 8, 2]
  • C. [2, 5, 1, 8]
  • D. [1, 2, 5, 8]

Câu 25: Dãy số A = [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng định nghĩa, cặp phần tử nào sau đây là một cặp nghịch đảo?

  • A. (A[0], A[2]) vì 3 < 4
  • B. (A[0], A[1]) vì 3 > 1
  • C. (A[2], A[4]) vì 4 < 5
  • D. (A[5], A[6]) vì 9 > 2

Câu 26: Khi làm mịn bước "Đếm số cặp nghịch đảo" trong thuật toán đếm, biến nào sau đây là cần thiết để lưu trữ kết quả cuối cùng?

  • A. Biến lưu trữ phần tử hiện tại.
  • B. Biến lưu trữ chỉ số vòng lặp.
  • C. Biến đếm (counter) được khởi tạo bằng 0.
  • D. Biến lưu trữ kích thước của dãy.

Câu 27: Giả sử bạn đang làm mịn bước "Xử lý một yêu cầu từ người dùng" trong một chương trình tương tác. Bước này có thể được làm mịn thành cấu trúc lập trình nào?

  • A. Vòng lặp for.
  • B. Cấu trúc điều kiện rẽ nhánh (if-else hoặc switch-case).
  • C. Vòng lặp while.
  • D. Gán giá trị trực tiếp.

Câu 28: Quá trình làm mịn dần giúp chuyển đổi từ "cần làm gì" sang "làm như thế nào". Điều này thể hiện khía cạnh nào của thiết kế chương trình?

  • A. Chuyển đổi từ mô tả bài toán sang mô tả thuật toán và cấu trúc dữ liệu.
  • B. Chuyển đổi từ mã nguồn sang sơ đồ khối.
  • C. Chuyển đổi từ kết quả chạy chương trình sang yêu cầu bài toán.
  • D. Chuyển đổi từ ngôn ngữ tự nhiên sang ngôn ngữ toán học.

Câu 29: Giả sử bạn đang thiết kế chức năng "Lưu dữ liệu người dùng vào tệp tin". Bước làm mịn "Ghi thông tin của một người dùng" có thể được làm mịn thành các thao tác I/O (Input/Output) cụ thể nào?

  • A. Đọc toàn bộ tệp tin.
  • B. Tìm kiếm thông tin trong tệp tin.
  • C. Đóng tệp tin.
  • D. Ghi tên người dùng, Ghi tuổi người dùng, Ghi địa chỉ người dùng.

Câu 30: Phương pháp làm mịn dần nhấn mạnh vào việc chia nhỏ bài toán và làm rõ từng bước. Điều này đóng góp như thế nào vào khả năng bảo trì (maintenance) chương trình sau này?

  • A. Làm cho mã nguồn ngắn gọn hơn.
  • B. Giúp dễ dàng xác định và sửa đổi các phần cụ thể của chương trình khi cần cập nhật hoặc sửa lỗi.
  • C. Tự động tạo tài liệu hướng dẫn sử dụng.
  • D. Ngăn chặn mọi lỗi phát sinh sau khi chương trình đã hoàn thành.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được hiểu là quá trình nào sau đây?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 2: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 3: Khi áp dụng phương pháp làm mịn dần để thiết kế chương trình 'Quản lý điểm học sinh', bước làm mịn đầu tiên (mức tổng quan nhất) thường là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 4: Tiếp theo bước 'Xử lý dữ liệu điểm học sinh' ở Câu 3, một bước làm mịn hợp lý có thể là chia thành các công việc con nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 5: Xét bước làm mịn 'Tính toán kết quả học tập' trong chương trình quản lý điểm. Bước này có thể được làm mịn thêm thành các công việc chi tiết hơn nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 6: Trong thuật toán sắp xếp chèn (Insertion Sort), bước làm mịn tổng quan nhất thường là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 7: Xét bước làm mịn 'Chèn phần tử A[i] vào phần dãy đã sắp xếp' trong thuật toán sắp xếp chèn. Bước này có thể được làm mịn thành các thao tác chi tiết hơn nào?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 8: Khi làm mịn bước 'Dịch chuyển các phần tử lớn hơn sang phải' trong thuật toán sắp xếp chèn, thao tác nào dưới đây là cần thiết?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 9: Giả sử bạn đang thiết kế chương trình 'Đếm số cặp nghịch đảo trong một dãy số'. Bước làm mịn đầu tiên (tổng quan) sẽ là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 10: Xét bước làm mịn 'Kiểm tra xem cặp (A[i], A[j]) với i < j có phải là cặp nghịch đảo không' trong thuật toán đếm cặp nghịch đảo. Điều kiện cụ thể để cặp này là nghịch đảo là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 11: Giả sử bạn đang làm mịn bước 'Duyệt qua tất cả các cặp phần tử (A[i], A[j]) với i < j' trong thuật toán đếm cặp nghịch đảo. Cấu trúc vòng lặp nào sau đây thể hiện đúng bước này?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 12: Bạn được yêu cầu thiết kế chương trình 'Tính tổng các số chẵn từ 1 đến N'. Áp dụng phương pháp làm mịn dần, bước nào sau đây là mức làm mịn chi tiết nhất (gần với mã lệnh)?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 13: Một ưu điểm của phương pháp làm mịn dần là khả năng dễ dàng kiểm thử từng phần. Điều này được thể hiện như thế nào trong quá trình thiết kế?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 14: Tại sao khi áp dụng làm mịn dần, ta nên bắt đầu từ mức tổng quan nhất trước khi đi vào chi tiết?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 15: Trong quá trình làm mịn dần, mỗi bước làm mịn sẽ tạo ra một 'mức' biểu diễn của bài toán. Mức biểu diễn này có đặc điểm gì so với mức trước đó?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 16: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 17: Xét bài toán 'Tìm phần tử lớn nhất trong một dãy số'. Bước làm mịn 'Duyệt qua dãy số' có thể được làm mịn thành cấu trúc lập trình nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 18: Xét bài toán 'Kiểm tra xem một số có phải số nguyên tố không'. Bước làm mịn 'Kiểm tra các ước số' có thể được làm mịn thành thao tác cụ thể nào?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 19: Trong phương pháp làm mịn dần, việc xác định 'đầu vào' và 'đầu ra' của bài toán thường được thực hiện ở bước nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 20: Một trong những nguyên tắc của làm mịn dần là mỗi bước làm mịn phải giữ được tính đúng đắn của bước trước đó. Điều này có nghĩa là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 21: Tại sao phương pháp làm mịn dần được gọi là 'từ trên xuống' (Top-down)?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 22: Khi áp dụng làm mịn dần cho thuật toán sắp xếp chèn trên dãy A = [5, 2, 8, 1]. Sau khi chèn phần tử thứ hai (số 2) vào đúng vị trí trong phần đã sắp xếp [5], dãy A sẽ trở thành trạng thái nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 23: Vẫn với dãy A = [5, 2, 8, 1] và thuật toán sắp xếp chèn. Sau khi chèn phần tử thứ ba (số 8) vào đúng vị trí trong phần đã sắp xếp [2, 5], dãy A sẽ trở thành trạng thái nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 24: Vẫn với dãy A = [5, 2, 8, 1] và thuật toán sắp xếp chèn. Sau khi chèn phần tử thứ tư (số 1) vào đúng vị trí trong phần đã sắp xếp [2, 5, 8], dãy A sẽ trở thành trạng thái nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 25: Dãy số A = [3, 1, 4, 1, 5, 9, 2, 6]. Áp dụng định nghĩa, cặp phần tử nào sau đây là một cặp nghịch đảo?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 26: Khi làm mịn bước 'Đếm số cặp nghịch đảo' trong thuật toán đếm, biến nào sau đây là cần thiết để lưu trữ kết quả cuối cùng?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 27: Giả sử bạn đang làm mịn bước 'Xử lý một yêu cầu từ người dùng' trong một chương trình tương tác. Bước này có thể được làm mịn thành cấu trúc lập trình nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 28: Quá trình làm mịn dần giúp chuyển đổi từ 'cần làm gì' sang 'làm như thế nào'. Điều này thể hiện khía cạnh nào của thiết kế chương trình?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 29: Giả sử bạn đang thiết kế chức năng 'Lưu dữ liệu người dùng vào tệp tin'. Bước làm mịn 'Ghi thông tin của một người dùng' có thể được làm mịn thành các thao tác I/O (Input/Output) cụ thể nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 03

Câu 30: Phương pháp làm mịn dần nhấn mạnh vào việc chia nhỏ bài toán và làm rõ từng bước. Điều này đóng góp như thế nào vào khả năng bảo trì (maintenance) chương trình sau này?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 04

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 04 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (step-wise refinement) trong thiết kế chương trình chủ yếu nhằm mục đích gì?

  • A. Tăng tốc độ thực thi của chương trình sau khi hoàn thành.
  • B. Chia nhỏ bài toán lớn thành các bước chi tiết, dễ hiểu và dễ chuyển thành mã lệnh.
  • C. Tự động phát hiện và sửa lỗi cú pháp trong quá trình viết mã.
  • D. Giảm thiểu tối đa việc sử dụng bộ nhớ của chương trình.

Câu 2: Khi áp dụng phương pháp làm mịn dần để thiết kế chương trình cho một bài toán mới, bước quan trọng đầu tiên thường là gì?

  • A. Bắt đầu viết các hàm (function) cơ bản.
  • B. Lựa chọn ngôn ngữ lập trình phù hợp.
  • C. Phân tích yêu cầu bài toán, xác định đầu vào và đầu ra.
  • D. Chia bài toán thành các mô đun nhỏ ngay lập tức.

Câu 3: Giả sử bạn có bước thiết kế tổng quát là

  • A. In kết quả ra màn hình.
  • B. Thực hiện các phép tính phức tạp.
  • C. Lưu trữ dữ liệu kết quả vào file.
  • D. Đọc dữ liệu từ nguồn, kiểm tra tính hợp lệ và chuyển đổi định dạng.

Câu 4: Ưu điểm chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình so với việc viết mã trực tiếp từ ý tưởng là gì?

  • A. Chỉ tốn ít thời gian hơn cho toàn bộ quá trình phát triển.
  • B. Chương trình có cấu trúc rõ ràng, dễ hiểu, dễ bảo trì và mở rộng.
  • C. Đảm bảo chương trình không bao giờ gặp lỗi trong quá trình chạy.
  • D. Không cần phải kiểm tra lại chương trình sau khi viết xong.

Câu 5: Trong phương pháp làm mịn dần, quá trình chi tiết hóa các bước được lặp đi lặp lại cho đến khi nào?

  • A. Các bước đủ chi tiết để chuyển trực tiếp thành câu lệnh lập trình.
  • B. Toàn bộ chương trình đã được viết xong mã lệnh.
  • C. Bài toán đã được chia thành ít nhất 10 bước con.
  • D. Đã xác định được tất cả các biến cần sử dụng.

Câu 6: Khi thiết kế thuật toán sắp xếp chèn (Insertion Sort) bằng phương pháp làm mịn dần, bước tổng quát nào thường được làm mịn thành các thao tác như

  • A. Duyệt qua toàn bộ dãy để tìm phần tử nhỏ nhất.
  • B. So sánh hai phần tử liền kề và hoán đổi nếu cần.
  • C. Chia dãy thành hai nửa.
  • D. Chèn phần tử đang xét vào đúng vị trí trong dãy con đã sắp xếp.

Câu 7: Trong quá trình làm mịn bước

  • A. `A[j] > key`
  • B. `A[j] < key`
  • C. `A[j] == key`
  • D. `j < i`

Câu 8: Khi thiết kế chương trình đếm số cặp nghịch đảo trong một dãy A[0...n-1] bằng phương pháp làm mịn dần, bước tổng quát

  • A. Sắp xếp dãy A và đếm số lần hoán đổi.
  • B. Chia dãy A thành hai nửa và áp dụng đệ quy.
  • C. Duyệt qua tất cả các cặp chỉ số (i, j) với i < j và kiểm tra điều kiện A[i] > A[j].
  • D. Chỉ kiểm tra các cặp phần tử liền kề (i, i+1).

Câu 9: Trong quá trình làm mịn dần, việc chia một bước lớn thành các bước con nhỏ hơn giúp ích gì cho lập trình viên khi chuyển sang giai đoạn viết mã?

  • A. Giúp họ viết mã nhanh hơn gấp đôi.
  • B. Làm cho việc chuyển từ ý tưởng thiết kế sang câu lệnh lập trình trở nên trực tiếp và dễ dàng hơn.
  • C. Tự động sinh ra mã lệnh hoàn chỉnh.
  • D. Loại bỏ hoàn toàn nhu cầu kiểm thử chương trình.

Câu 10: Phương pháp làm mịn dần thể hiện đặc điểm nào của tư duy thiết kế thuật toán?

  • A. Từ trên xuống (Top-down).
  • B. Từ dưới lên (Bottom-up).
  • C. Theo chiều ngang (Horizontal).
  • D. Ngẫu nhiên (Random).

Câu 11: Khi áp dụng phương pháp làm mịn dần, việc một bước được chi tiết hóa thành nhiều bước con thể hiện điều gì?

  • A. Bước đó là không cần thiết.
  • B. Bước đó đang được phân rã từ mức trừu tượng cao xuống mức trừu tượng thấp hơn.
  • C. Bước đó đã hoàn thành và sẵn sàng để viết mã.
  • D. Có lỗi trong logic của bước đó.

Câu 12: Giả sử bạn đang làm mịn bước

  • A. Lấy mật khẩu người dùng nhập -> Lấy mật khẩu đã lưu -> So sánh hai mật khẩu -> Thông báo kết quả.
  • B. Mã hóa mật khẩu -> Lưu vào cơ sở dữ liệu.
  • C. Hiển thị giao diện đăng nhập -> Nhận tên đăng nhập.
  • D. Tạo người dùng mới -> Gán mật khẩu mặc định.

Câu 13: Trong thuật toán sắp xếp chèn, sau khi phần tử A[i] (đã được lưu trong biến `key`) được chèn vào vị trí trống thích hợp, ta có thể khẳng định gì về dãy con A[0...i]?

  • A. Dãy A[0...i] chứa các phần tử ngẫu nhiên.
  • B. Dãy A[0...i] đã được sắp xếp theo đúng thứ tự.
  • C. Dãy A[0...i] chỉ chứa các phần tử lớn hơn A[i].
  • D. Dãy A[0...i] giống hệt dãy A[0...i-1].

Câu 14: Khi đếm số cặp nghịch đảo trong dãy A[0...n-1] bằng cách duyệt mọi cặp (i, j) với i < j, tại sao vòng lặp bên trong (duyệt j) chỉ cần bắt đầu từ `i + 1`?

  • A. Để đảm bảo chỉ số j luôn lớn hơn chỉ số i (j > i) và tránh kiểm tra các cặp trùng lặp.
  • B. Để bỏ qua phần tử đầu tiên của dãy.
  • C. Vì các phần tử từ A[0] đến A[i] đã được sắp xếp.
  • D. Để chỉ kiểm tra các phần tử đứng liền sau A[i].

Câu 15: Một bước thiết kế được làm mịn thành các bước con. Việc kiểm tra tính đúng đắn của các bước con đó nên được thực hiện khi nào?

  • A. Chỉ khi toàn bộ chương trình đã viết xong mã lệnh.
  • B. Chỉ khi chương trình chạy thử bị lỗi.
  • C. Ngay sau khi chi tiết hóa một bước thành các bước con.
  • D. Không cần kiểm tra, chỉ cần viết mã theo các bước chi tiết.

Câu 16: Phương pháp làm mịn dần giúp quản lý sự phức tạp của chương trình như thế nào?

  • A. Bằng cách chia nhỏ bài toán thành các phần nhỏ hơn, dễ quản lý hơn.
  • B. Bằng cách tự động loại bỏ các phần không cần thiết của bài toán.
  • C. Bằng cách yêu cầu sử dụng các cấu trúc dữ liệu đơn giản.
  • D. Bằng cách giới hạn số lượng dòng mã có thể viết.

Câu 17: Giả sử bạn đang làm mịn bước

  • A. Chỉ đọc dữ liệu từ file.
  • B. Các phép tính toán học, logic, xử lý chuỗi, v.v.
  • C. Chỉ hiển thị kết quả trên màn hình.
  • D. Chỉ nhập dữ liệu từ bàn phím.

Câu 18: Trong thuật toán sắp xếp chèn, việc dịch chuyển các phần tử lớn hơn sang phải trước khi chèn phần tử hiện tại (key) có ý nghĩa gì?

  • A. Để loại bỏ các phần tử không cần thiết.
  • B. Để đảo ngược thứ tự của dãy con đã sắp xếp.
  • C. Để tạo ra một vị trí trống thích hợp trong dãy con đã sắp xếp để chèn `key` vào.
  • D. Để tìm phần tử nhỏ nhất trong dãy.

Câu 19: Khi đếm số cặp nghịch đảo bằng cách duyệt mọi cặp (i, j) với i < j, một biến đếm (counter) được sử dụng. Biến này được khởi tạo giá trị ban đầu là bao nhiêu và được cập nhật khi nào?

  • A. Khởi tạo bằng 1, tăng lên khi A[i] < A[j].
  • B. Khởi tạo bằng n, giảm xuống khi tìm thấy cặp nghịch đảo.
  • C. Khởi tạo bằng 0, tăng lên sau mỗi lần lặp của vòng lặp ngoài (biến i).
  • D. Khởi tạo bằng 0, tăng lên 1 mỗi khi tìm thấy một cặp (i, j) thỏa mãn i < j và A[i] > A[j].

Câu 20: Phương pháp làm mịn dần giúp giảm thiểu rủi ro phát sinh lỗi trong quá trình phát triển chương trình như thế nào?

  • A. Nó tự động sửa lỗi ngay khi phát hiện.
  • B. Nó làm cho từng phần của chương trình trở nên đơn giản và dễ kiểm tra hơn.
  • C. Nó loại bỏ hoàn toàn việc sử dụng biến trong chương trình.
  • D. Nó chỉ cho phép sử dụng các cấu trúc điều khiển đơn giản.

Câu 21: Khi áp dụng làm mịn dần cho một bài toán, việc một bước được chi tiết hóa thành các bước con mà các bước con này lại quá trừu tượng hoặc không rõ ràng để viết mã ngay, điều này cho thấy vấn đề gì?

  • A. Quá trình làm mịn ở mức hiện tại chưa đủ chi tiết, cần tiếp tục làm mịn sâu hơn.
  • B. Bài toán không thể giải quyết được bằng phương pháp làm mịn dần.
  • C. Đã đến lúc dừng làm mịn và bắt đầu viết mã, bất kể mức độ chi tiết.
  • D. Cần quay lại bước xác định yêu cầu bài toán.

Câu 22: Trong thuật toán sắp xếp chèn, tại sao vòng lặp dùng để dịch chuyển các phần tử lớn hơn (A[j] > key) lại thường duyệt từ vị trí `i-1` lùi về 0?

  • A. Để tìm phần tử nhỏ nhất trong dãy con.
  • B. Để dễ dàng dịch chuyển các phần tử lớn hơn `key` sang phải và tìm vị trí chèn thích hợp từ cuối dãy con đã sắp xếp.
  • C. Để đảm bảo thời gian chạy thuật toán là nhỏ nhất.
  • D. Vì chỉ có các phần tử ở cuối dãy con mới cần dịch chuyển.

Câu 23: Khi thiết kế chương trình theo phương pháp làm mịn dần, việc sử dụng các tên gọi mang tính mô tả cao cho các bước (ví dụ:

  • A. Giúp làm rõ chức năng của từng bước ở mức trừu tượng hiện tại, tăng tính dễ hiểu của bản thiết kế.
  • B. Tên gọi này sẽ tự động trở thành tên hàm trong mã lệnh.
  • C. Không có ý nghĩa gì đặc biệt, chỉ là quy ước đặt tên.
  • D. Chỉ áp dụng cho các bước ở mức chi tiết nhất.

Câu 24: Trong phương pháp làm mịn dần, mỗi lần chi tiết hóa một bước, chúng ta đang chuyển từ mức độ nào sang mức độ nào của vấn đề?

  • A. Từ mức độ tổng quát sang mức độ chi tiết hơn.
  • B. Từ mức độ chi tiết sang mức độ tổng quát hơn.
  • C. Từ mức độ khó sang mức độ dễ.
  • D. Từ mức độ trừu tượng thấp sang mức độ trừu tượng cao.

Câu 25: Khi thiết kế chương trình xử lý một danh sách học sinh (ví dụ: tính điểm trung bình, xếp loại), bước tổng quát

  • A. Chỉ xử lý học sinh đầu tiên và học sinh cuối cùng.
  • B. Duyệt qua từng học sinh trong danh sách và thực hiện xử lý cho học sinh đó.
  • C. Chia danh sách thành hai phần không đều nhau.
  • D. Chỉ cần biết tổng số học sinh.

Câu 26: Trong phương pháp làm mịn dần, việc một bước được làm mịn thành các bước con có thể gợi ý cho việc sử dụng cấu trúc lập trình nào trong mã lệnh cuối cùng?

  • A. Chỉ sử dụng biến toàn cục.
  • B. Chỉ sử dụng các phép toán số học.
  • C. Chỉ sử dụng cấu trúc rẽ nhánh `if-else`.
  • D. Sử dụng các khối lệnh, cấu trúc điều khiển (vòng lặp, rẽ nhánh) hoặc các hàm/thủ tục.

Câu 27: Khi thiết kế chương trình đếm số cặp nghịch đảo bằng cách duyệt các cặp (i, j) với i < j, nếu dãy có n phần tử, số cặp (i, j) cần kiểm tra là bao nhiêu?

  • A. n
  • B. n - 1
  • C. n * (n - 1) / 2
  • D. n * n

Câu 28: Điều gì xảy ra nếu một lập trình viên bỏ qua hoàn toàn phương pháp làm mịn dần và bắt đầu viết mã ngay cho một bài toán phức tạp?

  • A. Mã chương trình có thể trở nên lộn xộn, khó hiểu, khó sửa lỗi và khó bảo trì.
  • B. Chương trình chắc chắn sẽ chạy nhanh hơn.
  • C. Quá trình phát triển sẽ nhanh chóng hơn rất nhiều.
  • D. Không có hậu quả tiêu cực nào xảy ra.

Câu 29: Khi làm mịn dần thuật toán sắp xếp chèn, bước

  • A. Một cấu trúc rẽ nhánh `if-else`.
  • B. Một hàm toán học.
  • C. Một phép gán đơn giản.
  • D. Một cấu trúc vòng lặp.

Câu 30: Bạn được yêu cầu thiết kế chương trình tính lương cho nhân viên dựa trên số giờ làm và mức lương theo giờ, có tính thêm giờ. Áp dụng phương pháp làm mịn dần, bước tổng quát đầu tiên bạn sẽ định nghĩa là gì?

  • A. Tính lương cho nhân viên.
  • B. Nhập số giờ làm và mức lương theo giờ.
  • C. Tính toán phần lương thêm giờ.
  • D. In phiếu lương.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 1: Phương pháp làm mịn dần (step-wise refinement) trong thiết kế chương trình chủ yếu nhằm mục đích gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 2: Khi áp dụng phương pháp làm mịn dần để thiết kế chương trình cho một bài toán mới, bước quan trọng đầu tiên thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 3: Giả sử bạn có bước thiết kế tổng quát là "Xử lý dữ liệu đầu vào". Theo phương pháp làm mịn dần, sự chi tiết hóa hợp lý cho bước này có thể bao gồm những thao tác nào?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 4: Ưu điểm chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình so với việc viết mã trực tiếp từ ý tưởng là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 5: Trong phương pháp làm mịn dần, quá trình chi tiết hóa các bước được lặp đi lặp lại cho đến khi nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 6: Khi thiết kế thuật toán sắp xếp chèn (Insertion Sort) bằng phương pháp làm mịn dần, bước tổng quát nào thường được làm mịn thành các thao tác như "lưu giá trị của phần tử hiện tại" và "dịch chuyển các phần tử lớn hơn sang phải"?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 7: Trong quá trình làm mịn bước "Chèn phần tử A[i] vào đúng vị trí" của thuật toán sắp xếp chèn, giả sử giá trị của A[i] được lưu trong biến `key`. Khi so sánh `key` với các phần tử A[j] trong dãy con A[0...i-1] (duyệt từ i-1 lùi về 0), điều kiện nào sau đây quyết định việc dịch chuyển A[j] sang phải?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 8: Khi thiết kế chương trình đếm số cặp nghịch đảo trong một dãy A[0...n-1] bằng phương pháp làm mịn dần, bước tổng quát "Đếm tất cả các cặp nghịch đảo" có thể được làm mịn ở mức đầu tiên theo cách đơn giản nhất như thế nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 9: Trong quá trình làm mịn dần, việc chia một bước lớn thành các bước con nhỏ hơn giúp ích gì cho lập trình viên khi chuyển sang giai đoạn viết mã?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 10: Phương pháp làm mịn dần thể hiện đặc điểm nào của tư duy thiết kế thuật toán?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 11: Khi áp dụng phương pháp làm mịn dần, việc một bước được chi tiết hóa thành nhiều bước con thể hiện điều gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 12: Giả sử bạn đang làm mịn bước "Xác thực mật khẩu người dùng". Sự chi tiết hóa nào sau đây là hợp lý nhất?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 13: Trong thuật toán sắp xếp chèn, sau khi phần tử A[i] (đã được lưu trong biến `key`) được chèn vào vị trí trống thích hợp, ta có thể khẳng định gì về dãy con A[0...i]?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 14: Khi đếm số cặp nghịch đảo trong dãy A[0...n-1] bằng cách duyệt mọi cặp (i, j) với i < j, tại sao vòng lặp bên trong (duyệt j) chỉ cần bắt đầu từ `i + 1`?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 15: Một bước thiết kế được làm mịn thành các bước con. Việc kiểm tra tính đúng đắn của các bước con đó nên được thực hiện khi nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 16: Phương pháp làm mịn dần giúp quản lý sự phức tạp của chương trình như thế nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 17: Giả sử bạn đang làm mịn bước "Tính toán kết quả". Tùy thuộc vào bài toán, bước này có thể được chi tiết hóa thành những loại thao tác nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 18: Trong thuật toán sắp xếp chèn, việc dịch chuyển các phần tử lớn hơn sang phải trước khi chèn phần tử hiện tại (key) có ý nghĩa gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 19: Khi đếm số cặp nghịch đảo bằng cách duyệt mọi cặp (i, j) với i < j, một biến đếm (counter) được sử dụng. Biến này được khởi tạo giá trị ban đầu là bao nhiêu và được cập nhật khi nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 20: Phương pháp làm mịn dần giúp giảm thiểu rủi ro phát sinh lỗi trong quá trình phát triển chương trình như thế nào?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 21: Khi áp dụng làm mịn dần cho một bài toán, việc một bước được chi tiết hóa thành các bước con mà các bước con này lại quá trừu tượng hoặc không rõ ràng để viết mã ngay, điều này cho thấy vấn đề gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 22: Trong thuật toán sắp xếp chèn, tại sao vòng lặp dùng để dịch chuyển các phần tử lớn hơn (A[j] > key) lại thường duyệt từ vị trí `i-1` lùi về 0?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 23: Khi thiết kế chương trình theo phương pháp làm mịn dần, việc sử dụng các tên gọi mang tính mô tả cao cho các bước (ví dụ: "Đọc dữ liệu", "Tính tổng", "In báo cáo") có ý nghĩa gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 24: Trong phương pháp làm mịn dần, mỗi lần chi tiết hóa một bước, chúng ta đang chuyển từ mức độ nào sang mức độ nào của vấn đề?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 25: Khi thiết kế chương trình xử lý một danh sách học sinh (ví dụ: tính điểm trung bình, xếp loại), bước tổng quát "Xử lý danh sách học sinh" có thể được làm mịn thành các bước con dựa trên cấu trúc dữ liệu như thế nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 26: Trong phương pháp làm mịn dần, việc một bước được làm mịn thành các bước con có thể gợi ý cho việc sử dụng cấu trúc lập trình nào trong mã lệnh cuối cùng?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 27: Khi thiết kế chương trình đếm số cặp nghịch đảo bằng cách duyệt các cặp (i, j) với i < j, nếu dãy có n phần tử, số cặp (i, j) cần kiểm tra là bao nhiêu?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 28: Điều gì xảy ra nếu một lập trình viên bỏ qua hoàn toàn phương pháp làm mịn dần và bắt đầu viết mã ngay cho một bài toán phức tạp?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 29: Khi làm mịn dần thuật toán sắp xếp chèn, bước "Duyệt qua các phần tử từ A[1] đến A[n-1]" được thực hiện ở mức tổng quát. Bước này gợi ý cho cấu trúc lập trình nào trong mã lệnh?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 04

Câu 30: Bạn được yêu cầu thiết kế chương trình tính lương cho nhân viên dựa trên số giờ làm và mức lương theo giờ, có tính thêm giờ. Áp dụng phương pháp làm mịn dần, bước tổng quát đầu tiên bạn sẽ định nghĩa là gì?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 05

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 05 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình tập trung chủ yếu vào khía cạnh nào?

  • A. Tối ưu hóa tốc độ thực thi của chương trình.
  • B. Lựa chọn ngôn ngữ lập trình phù hợp cho bài toán.
  • C. Kiểm thử và sửa lỗi chương trình sau khi hoàn thành.
  • D. Chia nhỏ và chi tiết hóa bài toán từ tổng quát đến cụ thể.

Câu 2: Khi bắt đầu áp dụng phương pháp làm mịn dần để giải quyết một bài toán lập trình, bước đầu tiên thường là gì?

  • A. Xác định rõ yêu cầu của bài toán, bao gồm đầu vào và đầu ra mong muốn.
  • B. Viết ngay các hàm hoặc thủ tục phức tạp nhất của chương trình.
  • C. Thiết kế giao diện người dùng cho chương trình.
  • D. Tìm kiếm và sử dụng các đoạn mã có sẵn trên internet.

Câu 3: Giả sử bạn cần thiết kế chương trình quản lý danh sách học sinh. Bước làm mịn đầu tiên (mức tổng quát nhất) theo phương pháp làm mịn dần có thể là gì?

  • A. Viết mã để thêm học sinh mới vào cơ sở dữ liệu.
  • B. Xây dựng hệ thống quản lý danh sách học sinh.
  • C. Thiết kế cấu trúc dữ liệu cho thông tin học sinh.
  • D. Tạo báo cáo thống kê số lượng học sinh giỏi.

Câu 4: Cho bước làm mịn ở mức cao:

  • A. In kết quả ra màn hình.
  • B. Lưu kết quả vào tệp.
  • C. Đọc dữ liệu từ tệp và kiểm tra tính hợp lệ của dữ liệu.
  • D. Tính toán dựa trên dữ liệu đã xử lý.

Câu 5: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Giảm thời gian chạy của chương trình.
  • B. Tự động sửa lỗi cú pháp trong mã lệnh.
  • C. Chỉ áp dụng cho các bài toán đơn giản.
  • D. Làm cho quá trình thiết kế trở nên rõ ràng, dễ quản lý và chuyển đổi thành mã lệnh.

Câu 6: Khi làm mịn một bước, ta cần đảm bảo điều gì?

  • A. Tổng hợp các bước con sau khi làm mịn phải thực hiện đầy đủ công việc của bước gốc.
  • B. Mỗi bước con phải là một câu lệnh lập trình hoàn chỉnh.
  • C. Số lượng bước con phải luôn là số chẵn.
  • D. Các bước con phải được thực hiện song song với nhau.

Câu 7: Trong quá trình làm mịn dần, khi nào thì dừng việc chi tiết hóa các bước?

  • A. Khi đã có đủ 10 bước làm mịn.
  • B. Khi các bước đã đủ chi tiết để có thể chuyển trực tiếp thành các câu lệnh lập trình.
  • C. Khi người thiết kế cảm thấy mệt mỏi.
  • D. Khi đã xác định được tất cả các biến cần sử dụng.

Câu 8: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-down design). Điều này ám chỉ điều gì về cách tiếp cận bài toán?

  • A. Bắt đầu từ các chi tiết nhỏ nhất rồi tổng hợp lại thành chương trình hoàn chỉnh.
  • B. Chỉ tập trung vào việc xử lý dữ liệu đầu vào trước khi xử lý đầu ra.
  • C. Bắt đầu từ ý tưởng tổng thể, sau đó chia nhỏ và chi tiết hóa dần các thành phần.
  • D. Thiết kế chương trình theo thứ tự các dòng mã được viết.

Câu 9: Khi áp dụng làm mịn dần cho thuật toán sắp xếp chèn, bước làm mịn

  • A. Lưu A[i] vào biến tạm; Tìm vị trí chèn bằng cách dịch các phần tử lớn hơn sang phải; Chèn biến tạm vào vị trí trống.
  • B. So sánh A[i] với A[0]; Nếu nhỏ hơn thì đổi chỗ; Lặp lại cho đến A[i-1].
  • C. Chia dãy thành hai nửa; Sắp xếp từng nửa; Trộn hai nửa lại.
  • D. Duyệt qua tất cả các cặp phần tử; Nếu sai thứ tự thì đổi chỗ.

Câu 10: Tại sao việc chia nhỏ bài toán thành các bước trong làm mịn dần giúp giảm thiểu sai sót?

  • A. Vì máy tính có thể tự động phát hiện lỗi trong các bước nhỏ.
  • B. Vì các bước nhỏ không cần phải kiểm tra tính đúng đắn.
  • C. Vì mỗi bước nhỏ hơn dễ hiểu, dễ tập trung phân tích và kiểm tra hơn so với toàn bộ bài toán phức tạp.
  • D. Vì các bước nhỏ không bao giờ chứa lỗi.

Câu 11: Giả sử bạn đang làm mịn bước

  • A. Chọn thuật toán tìm đường đi (ví dụ: Dijkstra, A*).
  • B. Xây dựng biểu đồ (graph) biểu diễn bản đồ.
  • C. Khởi tạo các giá trị khoảng cách ban đầu.
  • D. Thiết kế màu sắc cho giao diện hiển thị đường đi.

Câu 12: Khi một bước trong quy trình làm mịn dần đã đủ chi tiết để chuyển thành mã lệnh, nó thường tương ứng với cấu trúc nào trong lập trình?

  • A. Một hoặc nhiều câu lệnh, một khối lệnh, một hàm hoặc một thủ tục.
  • B. Toàn bộ chương trình chính.
  • C. Chỉ là một biến hoặc một hằng số.
  • D. Một sơ đồ khối tổng quát.

Câu 13: Phương pháp làm mịn dần giúp ích gì cho việc làm việc nhóm trong phát triển phần mềm?

  • A. Giảm số lượng người tham gia dự án.
  • B. Phân chia công việc rõ ràng cho từng thành viên dựa trên các bước đã làm mịn.
  • C. Loại bỏ hoàn toàn nhu cầu giao tiếp giữa các thành viên.
  • D. Tự động giải quyết xung đột giữa các phiên bản mã.

Câu 14: Điều gì xảy ra nếu bạn dừng quá trình làm mịn dần khi các bước vẫn còn quá mơ hồ?

  • A. Chương trình sẽ tự động hoàn thành các chi tiết còn thiếu.
  • B. Mã lệnh viết ra sẽ rất hiệu quả.
  • C. Việc chuyển đổi sang mã lệnh sẽ dễ dàng hơn.
  • D. Việc chuyển đổi sang mã lệnh sẽ gặp khó khăn do thiếu hướng dẫn chi tiết, dễ dẫn đến sai sót.

Câu 15: Giả sử bạn đang thiết kế chương trình tính tổng các số từ 1 đến N. Bước làm mịn

  • A. Khởi tạo biến tổng bằng 0; Lặp từ 1 đến N; Cộng mỗi số vào biến tổng.
  • B. Nhập số N; In kết quả.
  • C. Sử dụng công thức N*(N+1)/2.
  • D. Kiểm tra xem N có phải là số nguyên dương không.

Câu 16: Phương pháp làm mịn dần giúp quản lý độ phức tạp của chương trình bằng cách nào?

  • A. Chỉ giải quyết các bài toán đơn giản.
  • B. Tự động chia nhỏ mã nguồn thành nhiều tệp.
  • C. Tập trung giải quyết từng phần nhỏ của bài toán tại một thời điểm, giảm tải nhận thức.
  • D. Sử dụng các cấu trúc dữ liệu phức tạp.

Câu 17: Khi làm mịn một bước, ví dụ từ

  • A. Tối ưu hóa thuật toán.
  • B. Viết tài liệu hướng dẫn sử dụng.
  • C. Kiểm thử chức năng.
  • D. Chi tiết hóa cách thực hiện một công việc tổng quát.

Câu 18: Đâu là một ví dụ về bước làm mịn không hiệu quả hoặc không đúng theo nguyên tắc làm mịn dần?

  • A. Làm mịn
  • B. Làm mịn
  • C. Làm mịn
  • D. Làm mịn

Câu 19: Trong phương pháp làm mịn dần, mỗi bước làm mịn mới nên làm cho công việc trở nên:

  • A. Cụ thể và dễ chuyển đổi thành mã lệnh hơn.
  • B. Tổng quát và trừu tượng hơn.
  • C. Phụ thuộc nhiều hơn vào người dùng cuối.
  • D. Chỉ liên quan đến dữ liệu đầu vào.

Câu 20: Việc sử dụng các hàm (functions) hoặc thủ tục (procedures) trong lập trình có mối liên hệ như thế nào với phương pháp làm mịn dần?

  • A. Phương pháp làm mịn dần thay thế hoàn toàn việc sử dụng hàm/thủ tục.
  • B. Hàm/thủ tục chỉ được sử dụng ở bước làm mịn cuối cùng.
  • C. Mỗi bước làm mịn chi tiết có thể được triển khai thành một hàm hoặc thủ tục riêng biệt.
  • D. Không có mối liên hệ nào giữa hai khái niệm này.

Câu 21: Khi thiết kế thuật toán đếm số cặp nghịch đảo trong một dãy số A (các cặp (i, j) sao cho i < j và A[i] > A[j]), bước làm mịn đầu tiên (mức tổng quát) có thể là gì?

  • A. Sử dụng hai vòng lặp lồng nhau để duyệt qua các cặp (i, j).
  • B. Khởi tạo biến đếm bằng 0.
  • C. Đọc dãy số A từ đầu vào.
  • D. Đếm tất cả các cặp nghịch đảo trong dãy A.

Câu 22: Tiếp tục từ Câu 21, bước làm mịn

  • A. Sắp xếp dãy A rồi đếm.
  • B. Duyệt qua tất cả các cặp chỉ số (i, j) với i < j; Với mỗi cặp, kiểm tra nếu A[i] > A[j] thì tăng biến đếm.
  • C. Chỉ duyệt qua các phần tử ở đầu dãy.
  • D. Sử dụng đệ quy để chia dãy thành hai phần.

Câu 23: Một trong những nguyên tắc của làm mịn dần là giữ cho mỗi bước ở một mức độ trừu tượng nhất định trước khi đi sâu vào chi tiết. Điều này giúp tránh điều gì?

  • A. Bị sa lầy vào các chi tiết nhỏ quá sớm và mất cái nhìn tổng thể.
  • B. Không thể tìm ra giải pháp cho bài toán.
  • C. Chương trình chạy quá chậm.
  • D. Giao diện người dùng không thân thiện.

Câu 24: Giả sử bạn có bước làm mịn

  • A. Màu sắc của danh sách.
  • B. Tên của biến đếm vòng lặp.
  • C. Cách thức lặp (ví dụ: dùng vòng lặp for, while), điều kiện dừng, và hành động thực hiện với mỗi mục trong danh sách.
  • D. Tổng số mục trong danh sách.

Câu 25: Phương pháp làm mịn dần đặc biệt hữu ích cho loại bài toán nào?

  • A. Các bài toán phức tạp, đòi hỏi nhiều bước xử lý và tổ chức.
  • B. Các bài toán chỉ cần một vài dòng mã để giải quyết.
  • C. Các bài toán chỉ liên quan đến tính toán số học đơn giản.
  • D. Các bài toán đã có sẵn thư viện hỗ trợ đầy đủ.

Câu 26: Trong quá trình làm mịn dần, việc xác định đầu vào và đầu ra ở bước đầu tiên có vai trò gì?

  • A. Giúp chương trình chạy nhanh hơn.
  • B. Là bước tùy chọn, không bắt buộc.
  • C. Chỉ quan trọng khi sử dụng ngôn ngữ lập trình bậc thấp.
  • D. Thiết lập phạm vi và mục tiêu của bài toán, làm cơ sở để chia nhỏ và chi tiết hóa các bước tiếp theo.

Câu 27: Một lập trình viên viết toàn bộ mã nguồn cho chương trình ngay sau khi hiểu yêu cầu bài toán mà không phác thảo hay chia nhỏ các bước. Hành động này có phù hợp với phương pháp làm mịn dần không? Tại sao?

  • A. Có, vì đây là cách nhanh nhất để hoàn thành chương trình.
  • B. Không, vì phương pháp làm mịn dần yêu cầu chia nhỏ và chi tiết hóa từng bước trước khi viết mã.
  • C. Có, nếu lập trình viên đó có kinh nghiệm.
  • D. Không, trừ khi bài toán rất đơn giản.

Câu 28: Khi làm mịn bước

  • A. Cách tạo ra danh sách dữ liệu.
  • B. Tổng số phần tử trong danh sách.
  • C. Các thao tác cụ thể cần thực hiện trên một phần tử của danh sách (ví dụ: kiểm tra giá trị, biến đổi, tính toán...).
  • D. Cách lưu trữ danh sách sau khi xử lý.

Câu 29: Phương pháp làm mịn dần giúp cải thiện khả năng bảo trì và mở rộng chương trình như thế nào?

  • A. Cấu trúc chương trình rõ ràng theo các bước làm mịn giúp dễ hiểu, tìm lỗi và thêm chức năng mới vào từng phần cụ thể.
  • B. Tự động tạo tài liệu kỹ thuật chi tiết.
  • C. Giảm dung lượng bộ nhớ cần thiết.
  • D. Chỉ cho phép sử dụng các thư viện chuẩn.

Câu 30: Đâu là đặc điểm của một bước làm mịn tốt?

  • A. Nó mô tả toàn bộ chương trình chỉ trong một dòng.
  • B. Nó là một công việc đủ rõ ràng để có thể làm mịn tiếp hoặc chuyển thành mã lệnh mà không cần suy đoán quá nhiều.
  • C. Nó sử dụng nhiều thuật ngữ chuyên ngành phức tạp.
  • D. Nó chỉ liên quan đến giao diện người dùng.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình tập trung chủ yếu vào khía cạnh nào?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 2: Khi bắt đầu áp dụng phương pháp làm mịn dần để giải quyết một bài toán lập trình, bước đầu tiên thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 3: Giả sử bạn cần thiết kế chương trình quản lý danh sách học sinh. Bước làm mịn đầu tiên (mức tổng quát nhất) theo phương pháp làm mịn dần có thể là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 4: Cho bước làm mịn ở mức cao: "Xử lý dữ liệu đầu vào". Bước nào dưới đây là một *bước làm mịn tiếp theo* phù hợp cho bước trên?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 5: Lợi ích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 6: Khi làm mịn một bước, ta cần đảm bảo điều gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 7: Trong quá trình làm mịn dần, khi nào thì dừng việc chi tiết hóa các bước?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 8: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-down design). Điều này ám chỉ điều gì về cách tiếp cận bài toán?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 9: Khi áp dụng làm mịn dần cho thuật toán sắp xếp chèn, bước làm mịn "Chèn phần tử A[i] vào dãy con đã sắp xếp A[0..i-1]" có thể được làm mịn tiếp thành các bước nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 10: Tại sao việc chia nhỏ bài toán thành các bước trong làm mịn dần giúp giảm thiểu sai sót?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 11: Giả sử bạn đang làm mịn bước "Tìm đường đi ngắn nhất" trong một chương trình tìm đường. Bước nào sau đây *không phải* là một bước làm mịn hợp lý cho bước này?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 12: Khi một bước trong quy trình làm mịn dần đã đủ chi tiết để chuyển thành mã lệnh, nó thường tương ứng với cấu trúc nào trong lập trình?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 13: Phương pháp làm mịn dần giúp ích gì cho việc làm việc nhóm trong phát triển phần mềm?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 14: Điều gì xảy ra nếu bạn dừng quá trình làm mịn dần khi các bước vẫn còn quá mơ hồ?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 15: Giả sử bạn đang thiết kế chương trình tính tổng các số từ 1 đến N. Bước làm mịn "Tính tổng" có thể được làm mịn thành các bước nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 16: Phương pháp làm mịn dần giúp quản lý độ phức tạp của chương trình bằng cách nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 17: Khi làm mịn một bước, ví dụ từ "Sắp xếp danh sách" xuống các bước cụ thể hơn, ta đang thực hiện quá trình gì?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 18: Đâu là một ví dụ về bước làm mịn *không hiệu quả* hoặc *không đúng* theo nguyên tắc làm mịn dần?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 19: Trong phương pháp làm mịn dần, mỗi bước làm mịn mới nên làm cho công việc trở nên:

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 20: Việc sử dụng các hàm (functions) hoặc thủ tục (procedures) trong lập trình có mối liên hệ như thế nào với phương pháp làm mịn dần?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 21: Khi thiết kế thuật toán đếm số cặp nghịch đảo trong một dãy số A (các cặp (i, j) sao cho i < j và A[i] > A[j]), bước làm mịn đầu tiên (mức tổng quát) có thể là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 22: Tiếp tục từ Câu 21, bước làm mịn "Đếm tất cả các cặp nghịch đảo trong dãy A" có thể được làm mịn tiếp thành các bước nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 23: Một trong những nguyên tắc của làm mịn dần là giữ cho mỗi bước ở một mức độ trừu tượng nhất định trước khi đi sâu vào chi tiết. Điều này giúp tránh điều gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 24: Giả sử bạn có bước làm mịn "Lặp qua danh sách các mục". Bước làm mịn tiếp theo cần làm rõ điều gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 25: Phương pháp làm mịn dần đặc biệt hữu ích cho loại bài toán nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 26: Trong quá trình làm mịn dần, việc xác định đầu vào và đầu ra ở bước đầu tiên có vai trò gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 27: Một lập trình viên viết toàn bộ mã nguồn cho chương trình ngay sau khi hiểu yêu cầu bài toán mà không phác thảo hay chia nhỏ các bước. Hành động này có phù hợp với phương pháp làm mịn dần không? Tại sao?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 28: Khi làm mịn bước "Xử lý danh sách dữ liệu", một bước con có thể là "Xử lý từng phần tử trong danh sách". Bước làm mịn tiếp theo cho "Xử lý từng phần tử" sẽ tập trung vào điều gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 29: Phương pháp làm mịn dần giúp cải thiện khả năng bảo trì và mở rộng chương trình như thế nào?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 05

Câu 30: Đâu là đặc điểm của một bước làm mịn *tốt*?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 06

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 06 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được mô tả chính xác nhất là quá trình nào?

  • A. Viết mã nguồn trực tiếp từ mô tả yêu cầu ban đầu.
  • B. Chia nhỏ bài toán lớn thành các bài toán con, sau đó tiếp tục chi tiết hóa các bài toán con đó cho đến khi đủ rõ ràng để viết mã.
  • C. Kiểm tra và sửa lỗi (debug) chương trình sau khi hoàn thành việc viết mã.
  • D. Tối ưu hóa hiệu suất thực thi của chương trình đã viết.

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết một bài toán phức tạp, bước đầu tiên mang tính tổng quát nhất thường là gì?

  • A. Phân tích yêu cầu của bài toán và xác định mục tiêu cuối cùng.
  • B. Viết một vài dòng mã lệnh đầu tiên để thử nghiệm.
  • C. Chia bài toán thành 3-4 phần chính.
  • D. Vẽ sơ đồ chi tiết về luồng dữ liệu trong chương trình.

Câu 3: Giả sử bạn đang thiết kế chương trình tính điểm trung bình cho một danh sách sinh viên. Bước làm mịn đầu tiên (mức tổng quát) có thể là "Tính điểm trung bình". Bước làm mịn tiếp theo hợp lý nhất cho bước này là gì?

  • A. Khai báo biến `tong_diem` = 0.
  • B. In kết quả ra màn hình.
  • C. Thu thập điểm của tất cả sinh viên, tính tổng điểm, và chia cho số lượng sinh viên.
  • D. Sắp xếp danh sách sinh viên theo tên.

Câu 4: Mục đích chính của việc làm mịn dần các bước trong thiết kế chương trình là gì?

  • A. Biến ý tưởng trừu tượng thành các thao tác cụ thể, dễ dàng chuyển đổi thành mã lệnh.
  • B. Tìm ra cách tối ưu nhất để lưu trữ dữ liệu.
  • C. Giúp chương trình chạy nhanh hơn.
  • D. Tự động phát hiện và sửa lỗi cú pháp trong mã nguồn.

Câu 5: Bạn đang ở bước "Xử lý từng sinh viên" trong quá trình làm mịn cho bài toán quản lý sinh viên. Bước làm mịn tiếp theo nào thể hiện sự chi tiết hóa hợp lý cho "Xử lý từng sinh viên"?

  • A. Kết thúc vòng lặp.
  • B. Bắt đầu vòng lặp.
  • C. Tính tổng điểm của tất cả sinh viên.
  • D. Đọc thông tin sinh viên hiện tại, tính điểm trung bình cho sinh viên đó, và lưu kết quả.

Câu 6: Phương pháp làm mịn dần giúp ích gì cho việc quản lý dự án phát triển phần mềm, đặc biệt là với các dự án lớn?

  • A. Cho phép nhiều lập trình viên viết cùng một đoạn mã cùng lúc.
  • B. Chia nhỏ công việc thành các mô-đun hoặc nhiệm vụ nhỏ hơn, dễ phân công và theo dõi tiến độ.
  • C. Tự động tạo tài liệu hướng dẫn sử dụng cho chương trình.
  • D. Giảm thiểu chi phí bản quyền phần mềm.

Câu 7: Khi làm mịn một bước, chúng ta có thể sử dụng những gì để mô tả các bước con?

  • A. Chỉ mã lệnh của một ngôn ngữ lập trình cụ thể.
  • B. Chỉ sơ đồ khối.
  • C. Chỉ ngôn ngữ tự nhiên.
  • D. Kết hợp ngôn ngữ tự nhiên, mã giả (pseudo-code), sơ đồ khối hoặc các công cụ mô tả khác phù hợp với mức độ chi tiết.

Câu 8: Đâu là một trong những lợi ích chính của việc áp dụng phương pháp làm mịn dần đối với bản thân người lập trình?

  • A. Giảm thời gian thực thi của chương trình cuối cùng.
  • B. Loại bỏ hoàn toàn khả năng xảy ra lỗi logic trong thuật toán.
  • C. Giúp cấu trúc suy nghĩ rõ ràng hơn, dễ dàng chuyển đổi ý tưởng thành mã lệnh và quản lý sự phức tạp.
  • D. Tự động viết các bình luận (comments) giải thích mã nguồn.

Câu 9: Xét bước làm mịn "Tìm phần tử lớn nhất trong danh sách". Bước làm mịn nào sau đây không phải là một sự chi tiết hóa hợp lý cho bước này?

  • A. Giả sử phần tử đầu tiên là lớn nhất.
  • B. Duyệt qua các phần tử còn lại trong danh sách.
  • C. Nếu phần tử hiện tại lớn hơn phần tử lớn nhất đã biết, cập nhật phần tử lớn nhất.
  • D. Sắp xếp danh sách theo thứ tự tăng dần.

Câu 10: Phương pháp làm mịn dần còn được biết đến với tên gọi nào khác, nhấn mạnh việc tiếp cận từ cái nhìn tổng thể đến chi tiết?

  • A. Thiết kế từ trên xuống (Top-down design).
  • B. Thiết kế từ dưới lên (Bottom-up design).
  • C. Thiết kế hướng đối tượng (Object-oriented design).
  • D. Lập trình cấu trúc (Structured programming).

Câu 11: Giả sử bạn đang làm mịn bước "Xử lý dữ liệu nhập vào". Bước làm mịn "Kiểm tra tính hợp lệ của dữ liệu" là một chi tiết hóa của bước trước đó. Bước nào dưới đây có thể là một chi tiết hóa tiếp theo của "Kiểm tra tính hợp lệ của dữ liệu"?

  • A. Lưu dữ liệu vào cơ sở dữ liệu.
  • B. Nếu dữ liệu là số, kiểm tra xem nó có nằm trong phạm vi cho phép hay không.
  • C. Hiển thị kết quả xử lý.
  • D. Thực hiện phép tính trên dữ liệu.

Câu 12: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

  • A. Khi tất cả các bước đã được chi tiết hóa đủ rõ ràng để có thể chuyển trực tiếp thành các câu lệnh của ngôn ngữ lập trình.
  • B. Khi chương trình chạy mà không báo lỗi cú pháp.
  • C. Khi đã viết được ít nhất một hàm (function) trong chương trình.
  • D. Khi người thiết kế cảm thấy không thể chia nhỏ thêm được nữa, bất kể mức độ rõ ràng.

Câu 13: Xét bài toán "Đếm số lượng từ trong một câu". Bước làm mịn đầu tiên: "Đếm từ". Bước làm mịn thứ hai: "Chia câu thành các từ" và "Đếm số lượng các từ đã chia". Bước làm mịn thứ ba cho "Chia câu thành các từ" có thể là gì?

  • A. In ra số lượng từ.
  • B. Đọc câu nhập vào.
  • C. Duyệt qua từng ký tự của câu, xác định ranh giới giữa các từ (dựa vào khoảng trắng, dấu câu...), và tạo ra một danh sách các từ.
  • D. Cộng 1 vào bộ đếm cho mỗi từ tìm thấy.

Câu 14: Việc áp dụng phương pháp làm mịn dần giúp giảm thiểu loại lỗi nào trong quá trình phát triển chương trình?

  • A. Lỗi cú pháp (Syntax errors).
  • B. Lỗi logic (Logic errors) do bỏ sót hoặc hiểu sai các bước xử lý.
  • C. Lỗi thời gian chạy (Runtime errors) liên quan đến bộ nhớ.
  • D. Lỗi do virus máy tính.

Câu 15: Khi làm mịn một bước, điều quan trọng là mỗi bước con được chi tiết hóa phải làm gì?

  • A. Góp phần trực tiếp vào việc hoàn thành bước cha mẹ của nó.
  • B. Có thể chạy độc lập như một chương trình con hoàn chỉnh.
  • C. Sử dụng ít hơn 10 dòng mã lệnh.
  • D. Không phụ thuộc vào bất kỳ bước nào khác trong toàn bộ quy trình.

Câu 16: Xét thuật toán sắp xếp chèn. Bước tổng quát là "Sắp xếp danh sách". Bước làm mịn thứ nhất có thể là "Duyệt qua từng phần tử từ vị trí thứ hai trở đi" và "Chèn phần tử đó vào phần đã sắp xếp". Bước làm mịn tiếp theo cho "Chèn phần tử đó vào phần đã sắp xếp" sẽ tập trung vào điều gì?

  • A. So sánh phần tử hiện tại với tất cả các phần tử trong danh sách.
  • B. Tìm phần tử nhỏ nhất trong phần chưa sắp xếp.
  • C. Hoán đổi phần tử hiện tại với phần tử đầu tiên.
  • D. Tìm vị trí đúng cho phần tử trong phần đã sắp xếp và dịch chuyển các phần tử lớn hơn sang phải để tạo chỗ.

Câu 17: Trong phương pháp làm mịn dần, tại sao việc dừng lại ở mức độ chi tiết phù hợp là quan trọng?

  • A. Để tiết kiệm giấy khi vẽ sơ đồ.
  • B. Làm mịn quá mức có thể trở nên rườm rà và khó quản lý, trong khi làm mịn chưa đủ sẽ khó chuyển thành mã lệnh.
  • C. Để đảm bảo chương trình chỉ sử dụng các cấu trúc điều khiển đơn giản.
  • D. Vì các ngôn ngữ lập trình hiện đại không hỗ trợ quá nhiều mức chi tiết.

Câu 18: Bạn được giao nhiệm vụ thiết kế một chương trình "Quản lý thư viện nhỏ". Theo phương pháp làm mịn dần, bước nào sau đây nên được xem xét ở các mức làm mịn sâu hơn?

  • A. Kiểm tra xem một cuốn sách có sẵn trong kho hay không.
  • B. Quản lý sách.
  • C. Quản lý người đọc.
  • D. Lập báo cáo thống kê.

Câu 19: Đâu là nhược điểm tiềm tàng nếu áp dụng phương pháp làm mịn dần một cách cứng nhắc mà không linh hoạt?

  • A. Khó phân công công việc cho nhiều người.
  • B. Tạo ra quá ít tài liệu thiết kế.
  • C. Có thể bỏ sót các tương tác phức tạp giữa các phần nếu chỉ tập trung vào chi tiết từng phần riêng lẻ quá sớm.
  • D. Chỉ phù hợp với các bài toán đơn giản.

Câu 20: Trong quá trình làm mịn dần, việc sử dụng mã giả (pseudo-code) có lợi ích gì?

  • A. Giúp chương trình chạy nhanh hơn khi được chuyển sang mã thật.
  • B. Cho phép mô tả logic thuật toán một cách rõ ràng, gần với ngôn ngữ lập trình nhưng không bị ràng buộc bởi cú pháp cụ thể, dễ hiểu cho cả con người.
  • C. Tự động dịch sang bất kỳ ngôn ngữ lập trình nào.
  • D. Đảm bảo chương trình không có lỗi logic.

Câu 21: Xét bài toán "Tính tổng các số chẵn từ 1 đến N". Bước làm mịn đầu tiên: "Tính tổng". Bước làm mịn thứ hai: "Duyệt từ 1 đến N", "Kiểm tra số chẵn", "Cộng vào tổng". Bước làm mịn thứ ba cho "Kiểm tra số chẵn" là gì?

  • A. Sử dụng phép toán modulo để kiểm tra xem số đó chia hết cho 2 hay không.
  • B. Cộng số đó vào tổng.
  • C. Bỏ qua số đó nếu nó không chẵn.
  • D. Kiểm tra xem số đó có lớn hơn 0 hay không.

Câu 22: Phương pháp làm mịn dần đặc biệt hữu ích khi giải quyết các bài toán có đặc điểm nào?

  • A. Bài toán chỉ yêu cầu tính toán đơn giản.
  • B. Bài toán đã có sẵn mã nguồn mẫu.
  • C. Bài toán có yêu cầu không rõ ràng.
  • D. Bài toán phức tạp, có thể chia thành nhiều phần hoặc nhiều công đoạn xử lý.

Câu 23: Bạn đang làm mịn bước "Lưu kết quả vào tệp". Bước làm mịn tiếp theo nào thể hiện sự chi tiết hóa hợp lý?

  • A. Đọc dữ liệu từ tệp.
  • B. Mở tệp ở chế độ ghi, ghi dữ liệu vào tệp, sau đó đóng tệp.
  • C. Xóa nội dung của tệp.
  • D. Sắp xếp dữ liệu trước khi ghi.

Câu 24: Trong ngữ cảnh làm mịn dần, "mức độ trừu tượng" giảm dần khi chúng ta đi từ các bước tổng quát đến các bước chi tiết hơn. Điều này có nghĩa là gì?

  • A. Các bước mô tả càng gần với cách máy tính thực hiện, ít dựa vào khái niệm chung.
  • B. Các bước mô tả càng xa cách máy tính thực hiện, dựa nhiều vào ý tưởng.
  • C. Số lượng bước tăng lên.
  • D. Số lượng bước giảm đi.

Câu 25: Khi một bước làm mịn được chi tiết hóa thành các bước con, tổng hợp chức năng của các bước con đó phải đảm bảo điều gì?

  • A. Thực hiện một chức năng hoàn toàn khác với bước cha.
  • B. Luôn chạy nhanh hơn bước cha nếu bước cha được viết trực tiếp bằng mã.
  • C. Hoàn thành chính xác nhiệm vụ mà bước cha đã đặt ra.
  • D. Sử dụng ít tài nguyên bộ nhớ hơn.

Câu 26: Xét bài toán "Kiểm tra một số có phải là số nguyên tố không". Bước làm mịn đầu tiên: "Kiểm tra số nguyên tố". Bước làm mịn thứ hai có thể là "Nếu số nhỏ hơn 2, không phải nguyên tố", "Duyệt các số từ 2 đến căn bậc hai của số đó", "Nếu số chia hết cho bất kỳ số nào trong khoảng đó, không phải nguyên tố", "Nếu sau khi duyệt mà không chia hết, là nguyên tố". Đây là ví dụ về việc làm mịn dựa trên khía cạnh nào của bài toán?

  • A. Cấu trúc dữ liệu.
  • B. Logic kiểm tra và điều kiện.
  • C. Giao diện người dùng.
  • D. Định dạng đầu ra.

Câu 27: Phương pháp làm mịn dần khuyến khích việc gì trước khi bắt đầu viết mã chi tiết?

  • A. Tìm kiếm các thư viện mã nguồn mở phù hợp.
  • B. Ước lượng thời gian chạy của chương trình.
  • C. Thiết kế giao diện người dùng cuối cùng.
  • D. Hiểu rõ và cấu trúc bài toán thành các bước logic mạch lạc ở nhiều mức độ chi tiết.

Câu 28: Khi làm việc nhóm, phương pháp làm mịn dần hỗ trợ hiệu quả nhất cho hoạt động nào?

  • A. Phân chia công việc giữa các thành viên dựa trên các mô-đun hoặc bước đã được làm mịn.
  • B. Viết tài liệu hướng dẫn sử dụng cho người dùng cuối.
  • C. Tổ chức các cuộc họp nhóm hàng ngày.
  • D. Quyết định ngôn ngữ lập trình sẽ sử dụng.

Câu 29: Giả sử bạn có bước làm mịn "Đọc danh sách học sinh từ tệp". Bước làm mịn nào sau đây thể hiện sự chi tiết hóa không phù hợp hoặc đi quá xa so với mục tiêu của bước này?

  • A. Mở tệp ở chế độ đọc.
  • B. Đọc từng dòng dữ liệu từ tệp cho đến hết.
  • C. Tính điểm trung bình cho mỗi học sinh vừa đọc được.
  • D. Đóng tệp sau khi đọc xong.

Câu 30: Điều gì xảy ra nếu bỏ qua bước làm mịn dần và cố gắng viết mã lệnh chi tiết ngay từ ý tưởng ban đầu cho một bài toán phức tạp?

  • A. Chương trình sẽ hoàn thành nhanh hơn vì không tốn thời gian thiết kế.
  • B. Dễ bị mắc kẹt, khó quản lý sự phức tạp, tăng khả năng mắc lỗi logic và khó sửa chữa.
  • C. Chương trình cuối cùng chắc chắn sẽ hiệu quả hơn về tốc độ.
  • D. Không có sự khác biệt đáng kể so với việc sử dụng phương pháp làm mịn dần.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được mô tả chính xác nhất là quá trình nào?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết một bài toán phức tạp, bước đầu tiên mang tính tổng quát nhất thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 3: Giả sử bạn đang thiết kế chương trình tính điểm trung bình cho một danh sách sinh viên. Bước làm mịn đầu tiên (mức tổng quát) có thể là 'Tính điểm trung bình'. Bước làm mịn tiếp theo hợp lý nhất cho bước này là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 4: Mục đích chính của việc làm mịn dần các bước trong thiết kế chương trình là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 5: Bạn đang ở bước 'Xử lý từng sinh viên' trong quá trình làm mịn cho bài toán quản lý sinh viên. Bước làm mịn tiếp theo nào thể hiện sự chi tiết hóa hợp lý cho 'Xử lý từng sinh viên'?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 6: Phương pháp làm mịn dần giúp ích gì cho việc quản lý dự án phát triển phần mềm, đặc biệt là với các dự án lớn?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 7: Khi làm mịn một bước, chúng ta có thể sử dụng những gì để mô tả các bước con?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 8: Đâu là một trong những lợi ích chính của việc áp dụng phương pháp làm mịn dần đối với bản thân người lập trình?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 9: Xét bước làm mịn 'Tìm phần tử lớn nhất trong danh sách'. Bước làm mịn nào sau đây *không* phải là một sự chi tiết hóa hợp lý cho bước này?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 10: Phương pháp làm mịn dần còn được biết đến với tên gọi nào khác, nhấn mạnh việc tiếp cận từ cái nhìn tổng thể đến chi tiết?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 11: Giả sử bạn đang làm mịn bước 'Xử lý dữ liệu nhập vào'. Bước làm mịn 'Kiểm tra tính hợp lệ của dữ liệu' là một chi tiết hóa của bước trước đó. Bước nào dưới đây có thể là một chi tiết hóa tiếp theo của 'Kiểm tra tính hợp lệ của dữ liệu'?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 12: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 13: Xét bài toán 'Đếm số lượng từ trong một câu'. Bước làm mịn đầu tiên: 'Đếm từ'. Bước làm mịn thứ hai: 'Chia câu thành các từ' và 'Đếm số lượng các từ đã chia'. Bước làm mịn thứ ba cho 'Chia câu thành các từ' có thể là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 14: Việc áp dụng phương pháp làm mịn dần giúp giảm thiểu loại lỗi nào trong quá trình phát triển chương trình?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 15: Khi làm mịn một bước, điều quan trọng là mỗi bước con được chi tiết hóa phải làm gì?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 16: Xét thuật toán sắp xếp chèn. Bước tổng quát là 'Sắp xếp danh sách'. Bước làm mịn thứ nhất có thể là 'Duyệt qua từng phần tử từ vị trí thứ hai trở đi' và 'Chèn phần tử đó vào phần đã sắp xếp'. Bước làm mịn tiếp theo cho 'Chèn phần tử đó vào phần đã sắp xếp' sẽ tập trung vào điều gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 17: Trong phương pháp làm mịn dần, tại sao việc dừng lại ở mức độ chi tiết phù hợp là quan trọng?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 18: Bạn được giao nhiệm vụ thiết kế một chương trình 'Quản lý thư viện nhỏ'. Theo phương pháp làm mịn dần, bước nào sau đây nên được xem xét ở các mức làm mịn *sâu hơn*?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 19: Đâu là nhược điểm tiềm tàng nếu áp dụng phương pháp làm mịn dần một cách cứng nhắc mà không linh hoạt?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 20: Trong quá trình làm mịn dần, việc sử dụng mã giả (pseudo-code) có lợi ích gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 21: Xét bài toán 'Tính tổng các số chẵn từ 1 đến N'. Bước làm mịn đầu tiên: 'Tính tổng'. Bước làm mịn thứ hai: 'Duyệt từ 1 đến N', 'Kiểm tra số chẵn', 'Cộng vào tổng'. Bước làm mịn thứ ba cho 'Kiểm tra số chẵn' là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 22: Phương pháp làm mịn dần đặc biệt hữu ích khi giải quyết các bài toán có đặc điểm nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 23: Bạn đang làm mịn bước 'Lưu kết quả vào tệp'. Bước làm mịn tiếp theo nào thể hiện sự chi tiết hóa hợp lý?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 24: Trong ngữ cảnh làm mịn dần, 'mức độ trừu tượng' giảm dần khi chúng ta đi từ các bước tổng quát đến các bước chi tiết hơn. Điều này có nghĩa là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 25: Khi một bước làm mịn được chi tiết hóa thành các bước con, tổng hợp chức năng của các bước con đó phải đảm bảo điều gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 26: Xét bài toán 'Kiểm tra một số có phải là số nguyên tố không'. Bước làm mịn đầu tiên: 'Kiểm tra số nguyên tố'. Bước làm mịn thứ hai có thể là 'Nếu số nhỏ hơn 2, không phải nguyên tố', 'Duyệt các số từ 2 đến căn bậc hai của số đó', 'Nếu số chia hết cho bất kỳ số nào trong khoảng đó, không phải nguyên tố', 'Nếu sau khi duyệt mà không chia hết, là nguyên tố'. Đây là ví dụ về việc làm mịn dựa trên khía cạnh nào của bài toán?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 27: Phương pháp làm mịn dần khuyến khích việc gì trước khi bắt đầu viết mã chi tiết?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 28: Khi làm việc nhóm, phương pháp làm mịn dần hỗ trợ hiệu quả nhất cho hoạt động nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 29: Giả sử bạn có bước làm mịn 'Đọc danh sách học sinh từ tệp'. Bước làm mịn nào sau đây thể hiện sự chi tiết hóa không phù hợp hoặc đi quá xa so với mục tiêu của bước này?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 06

Câu 30: Điều gì xảy ra nếu bỏ qua bước làm mịn dần và cố gắng viết mã lệnh chi tiết ngay từ ý tưởng ban đầu cho một bài toán phức tạp?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 07

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 07 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được mô tả chính xác nhất là gì?

  • A. Một kỹ thuật để tối ưu hóa tốc độ thực thi của chương trình.
  • B. Một quy trình chia nhỏ vấn đề lớn thành các bài toán con nhỏ hơn, chi tiết hóa dần các bước giải quyết.
  • C. Phương pháp kiểm tra và sửa lỗi (debug) trong quá trình phát triển phần mềm.
  • D. Kỹ thuật tổ chức dữ liệu trong bộ nhớ để truy cập hiệu quả.

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết một bài toán lập trình, bước khởi đầu thường là gì?

  • A. Viết ngay các dòng mã lệnh đầu tiên.
  • B. Thiết kế giao diện người dùng cho chương trình.
  • C. Tìm hiểu yêu cầu bài toán, xác định rõ đầu vào và đầu ra.
  • D. Lựa chọn ngôn ngữ lập trình phù hợp nhất.

Câu 3: Giả sử bạn cần thiết kế chương trình để tính điểm trung bình cuối kỳ cho một học sinh. Bước làm mịn đầu tiên (mức tổng quát nhất) theo phương pháp làm mịn dần có thể là gì?

  • A. Nhập điểm của tất cả các môn học.
  • B. Áp dụng công thức tính điểm trung bình.
  • C. In ra màn hình điểm trung bình.
  • D. Tính và hiển thị điểm trung bình cuối kỳ.

Câu 4: Tiếp tục với bài toán tính điểm trung bình ở Câu 3, bước làm mịn tiếp theo cho "Tính và hiển thị điểm trung bình cuối kỳ" có thể được chia nhỏ thành các bước nào?

  • A. Nhập điểm các môn học; Tính điểm trung bình; Hiển thị điểm trung bình.
  • B. Kiểm tra điểm hợp lệ; Tính tổng điểm; Chia tổng điểm cho số môn.
  • C. Mở file lưu điểm; Đọc dữ liệu từ file; Tính điểm trung bình.
  • D. Xác định số môn; Nhập điểm từng môn; Hiển thị kết quả.

Câu 5: Ưu điểm chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Luôn tạo ra chương trình có tốc độ xử lý nhanh nhất.
  • B. Giúp cấu trúc chương trình rõ ràng, dễ hiểu, dễ phát triển và bảo trì.
  • C. Tự động sinh ra mã lệnh hoàn chỉnh từ các bước thiết kế.
  • D. Chỉ phù hợp với các bài toán nhỏ và đơn giản.

Câu 6: Trong quá trình làm mịn dần, mức độ chi tiết của các bước sẽ thay đổi như thế nào qua từng giai đoạn?

  • A. Ngày càng tổng quát hơn.
  • B. Không thay đổi mức độ chi tiết.
  • C. Lúc đầu chi tiết, sau đó tổng quát hơn.
  • D. Ngày càng chi tiết hơn.

Câu 7: Khi thiết kế thuật toán sắp xếp chèn (Insertion Sort) bằng phương pháp làm mịn dần, một trong những bước làm mịn ở mức trung gian có thể là gì?

  • A. Chèn phần tử hiện tại vào đúng vị trí trong phần dãy con đã sắp xếp.
  • B. So sánh hai phần tử liền kề và hoán đổi nếu sai thứ tự.
  • C. Tìm phần tử nhỏ nhất trong dãy chưa sắp xếp.
  • D. Chia dãy thành hai nửa bằng nhau.

Câu 8: Giả sử bạn đã có bước làm mịn "Chèn A[i] vào đúng vị trí trong dãy A[0...i-1]". Bước làm mịn tiếp theo cho bước này (ở mức chi tiết hơn) có thể bao gồm thao tác nào?

  • A. Hoán đổi A[i] với A[i-1] nếu A[i] < A[i-1].
  • B. Tìm vị trí có giá trị nhỏ nhất trong A[0...i-1].
  • C. Lưu giá trị A[i] vào biến tạm; Dịch chuyển các phần tử lớn hơn A[i] sang phải; Chèn giá trị tạm vào vị trí trống.
  • D. So sánh A[i] với A[0] và chèn vào đầu nếu nhỏ hơn.

Câu 9: Khi thiết kế chương trình đếm số cặp nghịch đảo trong một dãy số A = [a1, a2, ..., an], bước làm mịn đầu tiên (tổng quát) theo phương pháp làm mịn dần có thể là gì?

  • A. Sắp xếp dãy số theo thứ tự tăng dần.
  • B. Duyệt qua tất cả các cặp phần tử (ai, aj) trong dãy và đếm các cặp nghịch đảo.
  • C. Chỉ đếm các cặp phần tử liền kề nhau.
  • D. Tìm giá trị lớn nhất và nhỏ nhất trong dãy.

Câu 10: Tiếp tục với bài toán đếm cặp nghịch đảo ở Câu 9, bước làm mịn tiếp theo cho "Duyệt qua tất cả các cặp phần tử (ai, aj) và đếm các cặp nghịch đảo" có thể là gì?

  • A. Sử dụng hai vòng lặp lồng nhau để xét mọi cặp (i, j) với i < j; Kiểm tra điều kiện A[i] > A[j]; Tăng bộ đếm nếu là cặp nghịch đảo.
  • B. Sử dụng một vòng lặp để duyệt qua dãy; So sánh A[i] với A[i+1].
  • C. Chia dãy thành hai nửa; Đếm cặp nghịch đảo trong mỗi nửa.
  • D. Tìm kiếm phần tử trong dãy bằng thuật toán nhị phân.

Câu 11: Trong phương pháp làm mịn dần, việc chia nhỏ bài toán thành các bước nhỏ hơn giúp ích gì cho quá trình viết mã (coding)?

  • A. Giảm thiểu hoàn toàn việc phải viết mã.
  • B. Tự động phát hiện và sửa lỗi cú pháp trong mã.
  • C. Chỉ ra ngôn ngữ lập trình nào nên sử dụng.
  • D. Mỗi bước con chi tiết có thể dễ dàng chuyển thành một đoạn mã hoặc một hàm/thủ tục.

Câu 12: Việc áp dụng phương pháp làm mịn dần giúp lập trình viên tránh được vấn đề gì phổ biến khi giải quyết các bài toán phức tạp?

  • A. Bị choáng ngợp bởi độ phức tạp của toàn bộ bài toán và không biết bắt đầu từ đâu.
  • B. Viết mã quá nhanh dẫn đến nhiều lỗi.
  • C. Không đủ công cụ lập trình để hoàn thành dự án.
  • D. Thiếu dữ liệu đầu vào để kiểm thử chương trình.

Câu 13: Giả sử bạn cần thiết kế chương trình mô phỏng giao dịch rút tiền từ cây ATM. Bước làm mịn đầu tiên (mức tổng quát nhất) có thể là gì?

  • A. Kiểm tra số dư tài khoản.
  • B. Đưa tiền mặt ra cho khách.
  • C. Thực hiện giao dịch rút tiền.
  • D. In hóa đơn giao dịch.

Câu 14: Tiếp tục với bài toán mô phỏng ATM ở Câu 13, bước làm mịn tiếp theo cho "Thực hiện giao dịch rút tiền" có thể được chia nhỏ thành các bước nào?

  • A. Xác thực người dùng; Chọn số tiền rút; Xử lý yêu cầu rút tiền.
  • B. Đếm số lượng tiền trong máy; Cập nhật số dư tài khoản.
  • C. Gửi thông báo về ngân hàng; Nhận phản hồi từ ngân hàng.
  • D. Chỉ cần đưa tiền và in hóa đơn.

Câu 15: Tại sao việc dừng quá trình làm mịn ở mức độ phù hợp lại quan trọng trong thiết kế chương trình?

  • A. Để tiết kiệm giấy vẽ sơ đồ.
  • B. Để tránh chi tiết hóa quá mức, gây tốn thời gian và làm phức tạp thiết kế không cần thiết khi các bước đã đủ rõ ràng để mã hóa.
  • C. Vì không có đủ công cụ để làm mịn sâu hơn.
  • D. Để đảm bảo chương trình chạy nhanh hơn.

Câu 16: Phân tích cấu trúc của phương pháp làm mịn dần, nó tuân theo cách tiếp cận thiết kế nào?

  • A. Thiết kế từ trên xuống (Top-Down Design).
  • B. Thiết kế từ dưới lên (Bottom-Up Design).
  • C. Thiết kế hướng đối tượng (Object-Oriented Design).
  • D. Thiết kế cơ sở dữ liệu (Database Design).

Câu 17: Khi thiết kế một chức năng "Tìm kiếm sản phẩm theo tên" trong một ứng dụng bán hàng, bước làm mịn "Tìm kiếm sản phẩm trong cơ sở dữ liệu" có thể được chi tiết hóa thành các bước nào (ở mức độ cơ bản)?

  • A. Hiển thị danh sách sản phẩm.
  • B. Nhập tên sản phẩm cần tìm.
  • C. Sắp xếp kết quả tìm kiếm.
  • D. Kết nối cơ sở dữ liệu; Gửi truy vấn tìm kiếm; Nhận kết quả tìm kiếm.

Câu 18: Giả sử bạn đang làm mịn bước "Xử lý yêu cầu rút tiền" trong bài toán ATM. Một trong các bước làm mịn tiếp theo có thể là "Kiểm tra số dư tài khoản". Bước này cần được làm mịn thêm như thế nào để có thể chuyển thành mã lệnh?

  • A. So sánh số tiền yêu cầu rút với số dư hiện có; Nếu số tiền yêu cầu <= số dư: thực hiện rút tiền; Ngược lại: thông báo lỗi.
  • B. Chỉ cần kiểm tra số dư có lớn hơn 0 hay không.
  • C. Cộng số tiền yêu cầu vào số dư hiện có.
  • D. Tự động điều chỉnh số tiền yêu cầu sao cho nhỏ hơn số dư.

Câu 19: Việc sử dụng phương pháp làm mịn dần giúp cải thiện khả năng cộng tác nhóm trong phát triển phần mềm như thế nào?

  • A. Giảm thiểu số lượng thành viên cần thiết trong nhóm.
  • B. Cho phép chia nhỏ công việc, mỗi thành viên có thể phụ trách làm mịn và mã hóa một phần độc lập.
  • C. Loại bỏ hoàn toàn nhu cầu giao tiếp giữa các thành viên.
  • D. Tự động phân công công việc dựa trên kỹ năng của từng người.

Câu 20: Bước nào trong phương pháp làm mịn dần đòi hỏi khả năng phân tích vấn đề thành các thành phần logic?

  • A. Bước xác định đầu vào/đầu ra.
  • B. Bước viết mã lệnh cuối cùng.
  • C. Bước kiểm thử chương trình.
  • D. Bước chia nhỏ một bước tổng quát thành các bước con chi tiết hơn.

Câu 21: Khi làm mịn bước "Xử lý dữ liệu" trong một chương trình xử lý văn bản, nếu dữ liệu đầu vào là một tệp văn bản, bước làm mịn tiếp theo có thể là gì?

  • A. Hiển thị nội dung tệp lên màn hình.
  • B. Lưu kết quả xử lý ra tệp mới.
  • C. Mở tệp; Đọc dữ liệu từ tệp; Đóng tệp.
  • D. Tìm kiếm một từ khóa trong tệp.

Câu 22: Giả sử bạn đang thiết kế chương trình "Quản lý danh sách sinh viên". Bước làm mịn "Thêm sinh viên mới" có thể được chi tiết hóa thành các bước nào?

  • A. Nhập thông tin sinh viên; Kiểm tra tính hợp lệ/trùng lặp; Lưu thông tin sinh viên vào danh sách/cơ sở dữ liệu.
  • B. Chỉ cần nhập tên và mã số sinh viên.
  • C. Tìm kiếm sinh viên trong danh sách.
  • D. Xóa một sinh viên khỏi danh sách.

Câu 23: Bước làm mịn "Kiểm tra tính hợp lệ/trùng lặp" trong việc thêm sinh viên ở Câu 22 có thể được làm mịn thêm như thế nào?

  • A. Chỉ cần kiểm tra xem tên sinh viên có rỗng không.
  • B. Kiểm tra định dạng dữ liệu (ví dụ: mã số sinh viên); Tìm kiếm trong danh sách xem mã số sinh viên đã tồn tại chưa.
  • C. So sánh thông tin sinh viên mới với thông tin của tất cả sinh viên hiện có.
  • D. Tự động sửa các thông tin không hợp lệ.

Câu 24: Khi thiết kế một chương trình bằng phương pháp làm mịn dần, việc tạo ra các "module" hoặc "hàm" tương ứng với các bước làm mịn chi tiết giúp ích gì?

  • A. Tạo cấu trúc chương trình module hóa, dễ tái sử dụng mã và dễ kiểm thử từng phần.
  • B. Bắt buộc phải sử dụng ngôn ngữ lập trình hướng đối tượng.
  • C. Giảm thiểu số lượng biến cần sử dụng.
  • D. Chỉ áp dụng được cho các chương trình không có giao diện đồ họa.

Câu 25: Phương pháp làm mịn dần nhấn mạnh vào việc gì trong giai đoạn thiết kế chương trình?

  • A. Tốc độ gõ mã lệnh.
  • B. Lựa chọn framework hoặc thư viện tối ưu.
  • C. Tối ưu hóa hiệu suất bộ nhớ.
  • D. Phân tích và cấu trúc hóa bài toán thành các bước giải quyết rõ ràng.

Câu 26: Giả sử bạn cần thiết kế chương trình "Vẽ hình vuông". Bước làm mịn đầu tiên (tổng quát) có thể là gì?

  • A. Vẽ một đường thẳng.
  • B. Vẽ một hình vuông.
  • C. Xác định vị trí góc trên bên trái.
  • D. Đổi hướng vẽ 90 độ.

Câu 27: Tiếp tục với bài toán "Vẽ hình vuông" ở Câu 26, bước làm mịn tiếp theo cho "Vẽ một hình vuông" có thể là gì?

  • A. Lặp lại 4 lần: Vẽ một cạnh; Quay 90 độ.
  • B. Vẽ cạnh trên, cạnh dưới, cạnh trái, cạnh phải.
  • C. Tính toán độ dài cạnh.
  • D. Tô màu cho hình vuông.

Câu 28: Trong phương pháp làm mịn dần, việc ghi lại các bước làm mịn dưới dạng sơ đồ hoặc văn bản có cấu trúc (ví dụ: danh sách gạch đầu dòng, sơ đồ khối đơn giản) có ý nghĩa gì?

  • A. Là mã lệnh cuối cùng của chương trình.
  • B. Là kết quả của việc chạy thử chương trình.
  • C. Là báo cáo lỗi (bug report).
  • D. Là tài liệu mô tả quá trình thiết kế, giúp hình dung cấu trúc giải pháp và dễ dàng chuyển sang mã lệnh.

Câu 29: Phương pháp làm mịn dần giúp giảm thiểu rủi ro gì trong quá trình phát triển phần mềm?

  • A. Rủi ro về chi phí phần cứng.
  • B. Rủi ro về logic sai sót hoặc thiếu sót trong thiết kế sớm.
  • C. Rủi ro về tấn công an ninh mạng.
  • D. Rủi ro về việc chọn sai hệ điều hành.

Câu 30: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

  • A. Khi mỗi bước chi tiết đã đủ rõ ràng để có thể dễ dàng chuyển thành mã lệnh cụ thể.
  • B. Khi chương trình đã chạy thử thành công.
  • C. Khi tất cả các thành viên trong nhóm đã hiểu hết bài toán.
  • D. Khi đã vẽ xong tất cả các loại sơ đồ.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình được mô tả chính xác nhất là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 2: Khi áp dụng phương pháp làm mịn dần để giải quyết một bài toán lập trình, bước khởi đầu thường là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 3: Giả sử bạn cần thiết kế chương trình để tính điểm trung bình cuối kỳ cho một học sinh. Bước làm mịn đầu tiên (mức tổng quát nhất) theo phương pháp làm mịn dần có thể là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 4: Tiếp tục với bài toán tính điểm trung bình ở Câu 3, bước làm mịn tiếp theo cho 'Tính và hiển thị điểm trung bình cuối kỳ' có thể được chia nhỏ thành các bước nào?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 5: Ưu điểm chính của việc sử dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 6: Trong quá trình làm mịn dần, mức độ chi tiết của các bước sẽ thay đổi như thế nào qua từng giai đoạn?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 7: Khi thiết kế thuật toán sắp xếp chèn (Insertion Sort) bằng phương pháp làm mịn dần, một trong những bước làm mịn ở mức trung gian có thể là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 8: Giả sử bạn đã có bước làm mịn 'Chèn A[i] vào đúng vị trí trong dãy A[0...i-1]'. Bước làm mịn tiếp theo cho bước này (ở mức chi tiết hơn) có thể bao gồm thao tác nào?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 9: Khi thiết kế chương trình đếm số cặp nghịch đảo trong một dãy số A = [a1, a2, ..., an], bước làm mịn đầu tiên (tổng quát) theo phương pháp làm mịn dần có thể là gì?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 10: Tiếp tục với bài toán đếm cặp nghịch đảo ở Câu 9, bước làm mịn tiếp theo cho 'Duyệt qua tất cả các cặp phần tử (ai, aj) và đếm các cặp nghịch đảo' có thể là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 11: Trong phương pháp làm mịn dần, việc chia nhỏ bài toán thành các bước nhỏ hơn giúp ích gì cho quá trình viết mã (coding)?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 12: Việc áp dụng phương pháp làm mịn dần giúp lập trình viên tránh được vấn đề gì phổ biến khi giải quyết các bài toán phức tạp?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 13: Giả sử bạn cần thiết kế chương trình mô phỏng giao dịch rút tiền từ cây ATM. Bước làm mịn đầu tiên (mức tổng quát nhất) có thể là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 14: Tiếp tục với bài toán mô phỏng ATM ở Câu 13, bước làm mịn tiếp theo cho 'Thực hiện giao dịch rút tiền' có thể được chia nhỏ thành các bước nào?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 15: Tại sao việc dừng quá trình làm mịn ở mức độ phù hợp lại quan trọng trong thiết kế chương trình?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 16: Phân tích cấu trúc của phương pháp làm mịn dần, nó tuân theo cách tiếp cận thiết kế nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 17: Khi thiết kế một chức năng 'Tìm kiếm sản phẩm theo tên' trong một ứng dụng bán hàng, bước làm mịn 'Tìm kiếm sản phẩm trong cơ sở dữ liệu' có thể được chi tiết hóa thành các bước nào (ở mức độ cơ bản)?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 18: Giả sử bạn đang làm mịn bước 'Xử lý yêu cầu rút tiền' trong bài toán ATM. Một trong các bước làm mịn tiếp theo có thể là 'Kiểm tra số dư tài khoản'. Bước này cần được làm mịn thêm như thế nào để có thể chuyển thành mã lệnh?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 19: Việc sử dụng phương pháp làm mịn dần giúp cải thiện khả năng cộng tác nhóm trong phát triển phần mềm như thế nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 20: Bước nào trong phương pháp làm mịn dần đòi hỏi khả năng phân tích vấn đề thành các thành phần logic?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 21: Khi làm mịn bước 'Xử lý dữ liệu' trong một chương trình xử lý văn bản, nếu dữ liệu đầu vào là một tệp văn bản, bước làm mịn tiếp theo có thể là gì?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 22: Giả sử bạn đang thiết kế chương trình 'Quản lý danh sách sinh viên'. Bước làm mịn 'Thêm sinh viên mới' có thể được chi tiết hóa thành các bước nào?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 23: Bước làm mịn 'Kiểm tra tính hợp lệ/trùng lặp' trong việc thêm sinh viên ở Câu 22 có thể được làm mịn thêm như thế nào?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 24: Khi thiết kế một chương trình bằng phương pháp làm mịn dần, việc tạo ra các 'module' hoặc 'hàm' tương ứng với các bước làm mịn chi tiết giúp ích gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 25: Phương pháp làm mịn dần nhấn mạnh vào việc gì trong giai đoạn thiết kế chương trình?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 26: Giả sử bạn cần thiết kế chương trình 'Vẽ hình vuông'. Bước làm mịn đầu tiên (tổng quát) có thể là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 27: Tiếp tục với bài toán 'Vẽ hình vuông' ở Câu 26, bước làm mịn tiếp theo cho 'Vẽ một hình vuông' có thể là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 28: Trong phương pháp làm mịn dần, việc ghi lại các bước làm mịn dưới dạng sơ đồ hoặc văn bản có cấu trúc (ví dụ: danh sách gạch đầu dòng, sơ đồ khối đơn giản) có ý nghĩa gì?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 29: Phương pháp làm mịn dần giúp giảm thiểu rủi ro gì trong quá trình phát triển phần mềm?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 07

Câu 30: Khi nào thì quá trình làm mịn dần được coi là hoàn thành?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 08

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 08 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Phương pháp viết mã lệnh chương trình một cách nhanh chóng.
  • B. Phương pháp phân rã một bài toán lớn thành các bài toán con nhỏ hơn và chi tiết hóa dần các bước giải.
  • C. Phương pháp kiểm tra lỗi chính tả trong mã nguồn.
  • D. Phương pháp sắp xếp dữ liệu đầu vào theo một trật tự nhất định.

Câu 2: Khi bắt đầu thiết kế một chương trình theo phương pháp làm mịn dần, bước đầu tiên quan trọng nhất cần thực hiện là gì?

  • A. Viết các hàm (function) cơ bản của chương trình.
  • B. Xác định rõ yêu cầu của bài toán, bao gồm đầu vào (input) và đầu ra (output) mong muốn.
  • C. Lựa chọn ngôn ngữ lập trình sẽ sử dụng.
  • D. Phác thảo giao diện người dùng (UI).

Câu 3: Tại sao việc chia nhỏ bài toán thành các bài toán con lại là một nguyên tắc cốt lõi của phương pháp làm mịn dần?

  • A. Để chương trình chạy nhanh hơn trên máy tính.
  • B. Để giảm dung lượng bộ nhớ mà chương trình sử dụng.
  • C. Để mỗi bài toán con trở nên đơn giản hơn, dễ hiểu, dễ giải quyết và dễ quản lý.
  • D. Để tự động tìm ra lỗi sai trong thuật toán.

Câu 4: Giả sử bạn cần thiết kế chương trình để tính tổng tiền hóa đơn mua hàng. Bước tổng quát ban đầu có thể là "Tính tổng tiền hóa đơn". Bước làm mịn tiếp theo hợp lý nhất là gì?

  • A. In hóa đơn ra giấy.
  • B. Kiểm tra mã giảm giá.
  • C. Lấy danh sách các mặt hàng đã mua và giá của từng mặt hàng.
  • D. Lưu thông tin khách hàng vào cơ sở dữ liệu.

Câu 5: Tiếp theo câu hỏi trên, sau khi đã có bước "Lấy danh sách các mặt hàng đã mua và giá của từng mặt hàng", bước làm mịn tiếp theo để "Tính tổng tiền hóa đơn" là gì?

  • A. Duyệt qua danh sách, cộng giá của từng mặt hàng vào một biến tổng.
  • B. Sắp xếp các mặt hàng theo giá.
  • C. Tìm mặt hàng đắt nhất.
  • D. Xóa các mặt hàng có giá bằng 0.

Câu 6: Trong quá trình làm mịn dần, ý nghĩa của việc làm cho một bước thiết kế trở nên "cụ thể hơn" là gì?

  • A. Thêm các nhận xét (comment) vào mô tả bước đó.
  • B. Phân tích bước đó thành các thao tác, hành động hoặc chỉ dẫn chi tiết, rõ ràng hơn.
  • C. Đặt tên biến cho bước đó.
  • D. Ước lượng thời gian chạy của bước đó.

Câu 7: Xem xét bài toán "Tìm số lớn nhất trong một dãy số". Bước tổng quát ban đầu là "Xử lý từng số trong dãy". Để tìm số lớn nhất, bước làm mịn cần thiết cho "Xử lý từng số" là gì?

  • A. Loại bỏ các số âm ra khỏi dãy.
  • B. So sánh số hiện tại với số lớn nhất đã tìm thấy trước đó và cập nhật nếu cần.
  • C. Tính giá trị trung bình của dãy số.
  • D. Đếm số lượng các số chẵn trong dãy.

Câu 8: Ưu điểm chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình so với việc viết mã trực tiếp từ ý tưởng ban đầu là gì?

  • A. Đảm bảo chương trình không bao giờ có lỗi.
  • B. Giúp quản lý sự phức tạp, làm giảm khả năng mắc lỗi logic và giúp quá trình lập trình dễ dàng hơn.
  • C. Tự động tạo ra mã nguồn hoàn chỉnh.
  • D. Chỉ áp dụng được cho các bài toán rất đơn giản.

Câu 9: Trong phương pháp làm mịn dần, khi nào thì bạn nên dừng việc làm mịn một bước cụ thể?

  • A. Khi bước đó đã đủ chi tiết để có thể dễ dàng chuyển đổi trực tiếp thành một hoặc nhiều câu lệnh lập trình.
  • B. Sau khi đã làm mịn được 3 cấp độ.
  • C. Khi mô tả bước đó chỉ còn dưới 5 từ.
  • D. Khi bạn cảm thấy không thể nghĩ ra chi tiết nào nữa.

Câu 10: Nếu một bước trong thiết kế thuật toán sắp xếp được mô tả là "Chèn phần tử đang xét vào đúng vị trí trong phần mảng đã được sắp xếp", thì bước này đặc trưng cho phương pháp sắp xếp nào?

  • A. Sắp xếp nổi bọt (Bubble Sort).
  • B. Sắp xếp chọn (Selection Sort).
  • C. Sắp xếp chèn (Insertion Sort).
  • D. Sắp xếp nhanh (Quick Sort).

Câu 11: Đối với bước "Chèn phần tử đang xét vào đúng vị trí trong phần mảng đã được sắp xếp" (từ câu trước), một bước làm mịn hợp lý tiếp theo cho việc cài đặt là gì?

  • A. Đổi chỗ phần tử đang xét với phần tử đầu tiên của mảng.
  • B. So sánh phần tử đang xét với các phần tử trong phần đã sắp xếp và dịch chuyển các phần tử lớn hơn sang phải để tạo chỗ trống.
  • C. Tạo một mảng mới đã sắp xếp và sao chép các phần tử vào đó.
  • D. Xóa phần tử đang xét nếu nó đã ở đúng vị trí.

Câu 12: Xét bài toán "Đếm số lần xuất hiện của một từ cụ thể trong một văn bản". Bước tổng quát ban đầu có thể là "Xử lý nội dung văn bản". Bước làm mịn cấp độ đầu tiên hợp lý cho bước này là gì?

  • A. Đọc nội dung văn bản từ tệp tin hoặc nguồn khác.
  • B. In ra số lần đếm được.
  • C. Yêu cầu người dùng nhập từ cần đếm.
  • D. Tính tổng số ký tự trong văn bản.

Câu 13: Hạn chế tiềm ẩn nếu phương pháp làm mịn dần được áp dụng một cách sơ sài hoặc dừng quá trình làm mịn quá sớm là gì?

  • A. Chương trình cuối cùng sẽ chạy quá nhanh.
  • B. Các bước thiết kế vẫn còn quá mơ hồ, gây khó khăn khi chuyển sang viết mã lập trình cụ thể.
  • C. Chương trình sẽ sử dụng nhiều bộ nhớ hơn.
  • D. Chương trình sẽ dễ hiểu hơn đối với người khác.

Câu 14: Trong bài toán "đếm số cặp nghịch đảo" trong một mảng A (các cặp chỉ số (i, j) sao cho i < j và A[i] > A[j]), bước tổng quát là "Kiểm tra tất cả các cặp chỉ số (i, j) cần thiết". Bước làm mịn nào mô tả đúng cách "kiểm tra tất cả các cặp chỉ số (i, j) cần thiết"?

  • A. Sử dụng một vòng lặp duy nhất chạy từ i=0 đến n-1.
  • B. Sử dụng hai vòng lặp lồng nhau, vòng lặp ngoài chạy chỉ số i từ 0 đến n-2, vòng lặp trong chạy chỉ số j từ i+1 đến n-1.
  • C. Sử dụng hai vòng lặp lồng nhau, cả hai đều chạy từ 0 đến n-1.
  • D. Trước tiên sắp xếp mảng, sau đó đếm.

Câu 15: Tại sao việc xác định rõ đầu vào và đầu ra của chương trình lại quan trọng đến vậy trước khi đi sâu vào chi tiết bằng phương pháp làm mịn dần?

  • A. Để biết chương trình cần được viết bằng ngôn ngữ nào.
  • B. Để đặt ra mục tiêu rõ ràng và phạm vi giới hạn cho quá trình thiết kế.
  • C. Để ước tính thời gian cần thiết để hoàn thành chương trình.
  • D. Đây là quy định bắt buộc của tất cả các công ty phần mềm.

Câu 16: Thuật ngữ "làm mịn dần" trong tiếng Việt, khi áp dụng vào thiết kế chương trình, mô tả chính xác khái niệm nào?

  • A. Tối ưu hóa mã nguồn để chạy nhanh hơn.
  • B. Việc bổ sung chi tiết một cách từ từ vào bản thiết kế, bắt đầu từ ý tưởng tổng quát.
  • C. Loại bỏ các lỗi sai khỏi chương trình.
  • D. Làm cho giao diện người dùng trở nên đẹp mắt hơn.

Câu 17: Khi áp dụng phương pháp làm mịn dần, hình thức biểu diễn nào thường được sử dụng cho các bước thiết kế ở các giai đoạn trung gian, trước khi chuyển sang mã lập trình?

  • A. Mã nhị phân (Binary code).
  • B. Mã giả (Pseudocode) hoặc các mô tả bằng ngôn ngữ tự nhiên có cấu trúc.
  • C. Sơ đồ cơ sở dữ liệu (Database schema).
  • D. Sơ đồ mạch điện.

Câu 18: Giả sử bạn đang thiết kế chương trình quản lý điểm học sinh. Một bước ban đầu là "Tính điểm trung bình cho mỗi học sinh". Bước làm mịn hợp lý cho bước này là gì?

  • A. Đối với mỗi học sinh, lấy tổng điểm các môn và chia cho số lượng môn học.
  • B. Lưu trữ tất cả điểm số vào một tệp tin.
  • C. Tạo báo cáo về học sinh có điểm cao nhất.
  • D. Hỏi giáo viên về cách tính điểm.

Câu 19: Mối quan hệ giữa phương pháp làm mịn dần và việc thiết kế chương trình theo các mô-đun (chia mô-đun) là gì?

  • A. Chúng là hai khái niệm hoàn toàn không liên quan.
  • B. Quá trình làm mịn dần giúp xác định các phần chức năng độc lập có thể phát triển thành các mô-đun.
  • C. Thiết kế theo mô-đun phải hoàn thành xong trước khi bắt đầu làm mịn dần.
  • D. Làm mịn dần thay thế hoàn toàn việc thiết kế theo mô-đun.

Câu 20: Nếu một bước trong thiết kế chương trình là "Đọc dữ liệu từ tệp", thì bước làm mịn chi tiết hơn cho bước này có thể bao gồm những gì?

  • A. Thiết kế màu sắc cho giao diện người dùng.
  • B. Xác định đường dẫn tệp, định dạng dữ liệu trong tệp và cách xử lý các trường hợp lỗi (ví dụ: tệp không tồn tại).
  • C. Loại bộ vi xử lý mà chương trình sẽ chạy trên đó.
  • D. Cách kết nối với máy in.

Câu 21: Đánh giá mức độ làm mịn: Cho bước "Sắp xếp danh sách". Xét hai cách làm mịn: (A) "Sử dụng hàm sắp xếp có sẵn trong thư viện", (B) "Thực hiện các thao tác đổi chỗ các phần tử cho đến khi danh sách có thứ tự". Cách làm mịn nào cụ thể hơn về mặt mô tả quá trình thuật toán nếu bạn muốn tự viết mã sắp xếp?

  • A. Làm mịn (A).
  • B. Làm mịn (B).
  • C. Cả hai đều cụ thể như nhau.
  • D. Cả hai đều không đủ cụ thể.

Câu 22: Mục tiêu chính của giai đoạn cuối cùng trong quá trình làm mịn dần là gì?

  • A. Xác định bài toán tổng thể.
  • B. Tạo ra các bước thiết kế đủ chi tiết, rõ ràng để có thể dễ dàng chuyển đổi trực tiếp thành các câu lệnh của ngôn ngữ lập trình.
  • C. Viết toàn bộ hướng dẫn sử dụng cho chương trình.
  • D. Đo đạc hiệu năng hoạt động của chương trình.

Câu 23: Trong thuật toán sắp xếp chèn, bước "Dịch chuyển các phần tử lớn hơn phần tử đang xét sang phải" là một bước làm mịn của "Chèn phần tử đang xét". Mục đích của hành động dịch chuyển này là gì?

  • A. Để tìm phần tử nhỏ nhất trong phần đã sắp xếp.
  • B. Để tạo một khoảng trống trong phần đã sắp xếp, nơi phần tử đang xét có thể được chèn vào mà vẫn giữ đúng thứ tự.
  • C. Để xóa các phần tử nhỏ hơn phần tử đang xét.
  • D. Để đảo ngược thứ tự của phần đã sắp xếp.

Câu 24: Xét bài toán "Mô phỏng việc gieo một con xúc xắc 6 mặt". Bước ban đầu: "Tạo ra một kết quả ngẫu nhiên". Làm mịn lần 1: "Tạo ra một số nguyên ngẫu nhiên". Bước làm mịn tiếp theo cần thiết để mô phỏng đúng con xúc xắc là gì?

  • A. Đảm bảo số nguyên ngẫu nhiên nằm trong khoảng từ 1 đến 6 (bao gồm cả 1 và 6).
  • B. Làm cho số nguyên ngẫu nhiên trở thành số âm.
  • C. Tạo ra một số thực ngẫu nhiên.
  • D. Tạo ra hai số nguyên ngẫu nhiên.

Câu 25: Khi làm mịn một bước trong quy trình làm mịn dần, điều quan trọng nhất bạn nên tập trung vào là gì?

  • A. Làm cho bước đó nghe có vẻ phức tạp và chuyên nghiệp.
  • B. Thêm vào các chi tiết không cần thiết.
  • C. Phân rã bước đó thành các bước con nhỏ hơn, chính xác hơn và không gây nhầm lẫn.
  • D. Bỏ qua những phần khó và hy vọng sẽ giải quyết được sau.

Câu 26: Nếu một bước trong thiết kế chương trình là "Xử lý dữ liệu người dùng nhập vào", một khía cạnh quan trọng cần cân nhắc trong quá trình làm mịn bước này là gì?

  • A. Loại ngôn ngữ lập trình sẽ sử dụng.
  • B. Cách xử lý các trường hợp dữ liệu nhập vào không hợp lệ (ví dụ: người dùng nhập chữ khi chương trình cần số).
  • C. Màu nền của ô nhập dữ liệu trên giao diện.
  • D. Cách biên dịch mã nguồn.

Câu 27: Một bước thiết kế được coi là "có thể cài đặt được" ("implementable") trong bối cảnh làm mịn dần nghĩa là gì?

  • A. Nghĩa là bước đó có thể được mô tả bằng các công thức toán học.
  • B. Nghĩa là bước đó đủ đơn giản và rõ ràng để một lập trình viên có thể viết mã tương ứng trực tiếp mà không cần thêm hướng dẫn chi tiết nào nữa.
  • C. Nghĩa là bước đó chỉ cần ít hơn 5 dòng mã lệnh.
  • D. Nghĩa là bước đó có thể vẽ được bằng một ký hiệu trong sơ đồ khối.

Câu 28: Xét bài toán "Kiểm tra xem một số nguyên dương N có phải là số nguyên tố hay không". Bước ban đầu: "Xác định xem N có ước số nào khác 1 và N hay không". Bước làm mịn nào mô tả đúng cách thực hiện việc này?

  • A. Kiểm tra xem N có chia hết cho bất kỳ số nguyên nào từ 2 đến N-1.
  • B. Kiểm tra xem N có chia hết cho bất kỳ số nguyên nào từ N-1 giảm dần về 2.
  • C. Kiểm tra xem N có chia hết cho bất kỳ số nguyên nào từ 2 đến phần nguyên căn bậc hai của N.
  • D. Chỉ kiểm tra xem N có chia hết cho 1 và N.

Câu 29: Tại sao việc xem xét các khía cạnh kiểm thử và xác minh (testing and verification) lại có lợi khi thực hiện trong hoặc ngay sau quá trình làm mịn một bước lớn, thay vì đợi đến khi toàn bộ chương trình đã được viết mã xong?

  • A. Giúp phát hiện sớm các lỗi logic, khi chúng còn dễ và ít tốn kém để sửa.
  • B. Làm tăng tốc độ thực thi của chương trình.
  • C. Làm cho mã nguồn ngắn gọn hơn.
  • D. Đây là một yêu cầu bắt buộc đối với mọi dự án phần mềm.

Câu 30: Kết quả cuối cùng của toàn bộ quá trình làm mịn dần, ngay trước khi bắt đầu viết mã lập trình cuối cùng, được mô tả tốt nhất như thế nào?

  • A. Một bản phác thảo sơ bộ về các chức năng chính của chương trình.
  • B. Một tập hợp các bước chi tiết, cụ thể hoặc mã giả, mô tả trực tiếp logic xử lý của chương trình.
  • C. Một chương trình đã được biên dịch và có thể chạy được.
  • D. Một danh sách những người dùng tiềm năng của chương trình.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Câu 1: Phương pháp làm mịn dần trong thiết kế chương trình là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Khi bắt đầu thiết kế một chương trình theo phương pháp làm mịn dần, bước đầu tiên quan trọng nhất cần thực hiện là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Tại sao việc chia nhỏ bài toán thành các bài toán con lại là một nguyên tắc cốt lõi của phương pháp làm mịn dần?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Giả sử bạn cần thiết kế chương trình để tính tổng tiền hóa đơn mua hàng. Bước tổng quát ban đầu có thể là 'Tính tổng tiền hóa đơn'. Bước làm mịn tiếp theo hợp lý nhất là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Tiếp theo câu hỏi trên, sau khi đã có bước 'Lấy danh sách các mặt hàng đã mua và giá của từng mặt hàng', bước làm mịn tiếp theo để 'Tính tổng tiền hóa đơn' là gì?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Trong quá trình làm mịn dần, ý nghĩa của việc làm cho một bước thiết kế trở nên 'cụ thể hơn' là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Xem xét bài toán 'Tìm số lớn nhất trong một dãy số'. Bước tổng quát ban đầu là 'Xử lý từng số trong dãy'. Để tìm số lớn nhất, bước làm mịn cần thiết cho 'Xử lý từng số' là gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Ưu điểm chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình so với việc viết mã trực tiếp từ ý tưởng ban đầu là gì?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Trong phương pháp làm mịn dần, khi nào thì bạn nên dừng việc làm mịn một bước cụ thể?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Nếu một bước trong thiết kế thuật toán sắp xếp được mô tả là 'Chèn phần tử đang xét vào đúng vị trí trong phần mảng đã được sắp xếp', thì bước này đặc trưng cho phương pháp sắp xếp nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Đối với bước 'Chèn phần tử đang xét vào đúng vị trí trong phần mảng đã được sắp xếp' (từ câu trước), một bước làm mịn hợp lý tiếp theo cho việc cài đặt là gì?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Xét bài toán 'Đếm số lần xuất hiện của một từ cụ thể trong một văn bản'. Bước tổng quát ban đầu có thể là 'Xử lý nội dung văn bản'. Bước làm mịn cấp độ đầu tiên hợp lý cho bước này là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Hạn chế tiềm ẩn nếu phương pháp làm mịn dần được áp dụng một cách sơ sài hoặc dừng quá trình làm mịn quá sớm là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Trong bài toán 'đếm số cặp nghịch đảo' trong một mảng A (các cặp chỉ số (i, j) sao cho i < j và A[i] > A[j]), bước tổng quát là 'Kiểm tra tất cả các cặp chỉ số (i, j) cần thiết'. Bước làm mịn nào mô tả đúng cách 'kiểm tra tất cả các cặp chỉ số (i, j) cần thiết'?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Tại sao việc xác định rõ đầu vào và đầu ra của chương trình lại quan trọng đến vậy trước khi đi sâu vào chi tiết bằng phương pháp làm mịn dần?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Thuật ngữ 'làm mịn dần' trong tiếng Việt, khi áp dụng vào thiết kế chương trình, mô tả chính xác khái niệm nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Khi áp dụng phương pháp làm mịn dần, hình thức biểu diễn nào thường được sử dụng cho các bước thiết kế ở các giai đoạn trung gian, trước khi chuyển sang mã lập trình?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Giả sử bạn đang thiết kế chương trình quản lý điểm học sinh. Một bước ban đầu là 'Tính điểm trung bình cho mỗi học sinh'. Bước làm mịn hợp lý cho bước này là gì?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Mối quan hệ giữa phương pháp làm mịn dần và việc thiết kế chương trình theo các mô-đun (chia mô-đun) là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Nếu một bước trong thiết kế chương trình là 'Đọc dữ liệu từ tệp', thì bước làm mịn chi tiết hơn cho bước này có thể bao gồm những gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Đánh giá mức độ làm mịn: Cho bước 'Sắp xếp danh sách'. Xét hai cách làm mịn: (A) 'Sử dụng hàm sắp xếp có sẵn trong thư viện', (B) 'Thực hiện các thao tác đổi chỗ các phần tử cho đến khi danh sách có thứ tự'. Cách làm mịn nào *cụ thể hơn về mặt mô tả quá trình thuật toán* nếu bạn muốn tự viết mã sắp xếp?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Mục tiêu chính của giai đoạn cuối cùng trong quá trình làm mịn dần là gì?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Trong thuật toán sắp xếp chèn, bước 'Dịch chuyển các phần tử lớn hơn phần tử đang xét sang phải' là một bước làm mịn của 'Chèn phần tử đang xét'. Mục đích của hành động dịch chuyển này là gì?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Xét bài toán 'Mô phỏng việc gieo một con xúc xắc 6 mặt'. Bước ban đầu: 'Tạo ra một kết quả ngẫu nhiên'. Làm mịn lần 1: 'Tạo ra một số nguyên ngẫu nhiên'. Bước làm mịn tiếp theo cần thiết để mô phỏng đúng con xúc xắc là gì?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Khi làm mịn một bước trong quy trình làm mịn dần, điều quan trọng nhất bạn nên tập trung vào là gì?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Nếu một bước trong thiết kế chương trình là 'Xử lý dữ liệu người dùng nhập vào', một khía cạnh quan trọng cần cân nhắc trong quá trình làm mịn bước này là gì?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Một bước thiết kế được coi là 'có thể cài đặt được' ('implementable') trong bối cảnh làm mịn dần nghĩa là gì?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Xét bài toán 'Kiểm tra xem một số nguyên dương N có phải là số nguyên tố hay không'. Bước ban đầu: 'Xác định xem N có ước số nào khác 1 và N hay không'. Bước làm mịn nào mô tả đúng cách thực hiện việc này?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Tại sao việc xem xét các khía cạnh kiểm thử và xác minh (testing and verification) lại có lợi khi thực hiện *trong hoặc ngay sau* quá trình làm mịn một bước lớn, thay vì đợi đến khi toàn bộ chương trình đã được viết mã xong?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 08

Kết quả cuối cùng của toàn bộ quá trình làm mịn dần, *ngay trước khi* bắt đầu viết mã lập trình cuối cùng, được mô tả tốt nhất như thế nào?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 09

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 09 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình chủ yếu tập trung vào nguyên tắc nào?

  • A. Tối ưu hóa tốc độ thực thi chương trình.
  • B. Phân rã bài toán lớn thành các bài toán con nhỏ hơn một cách có hệ thống.
  • C. Sử dụng các cấu trúc dữ liệu phức tạp để giải quyết vấn đề.
  • D. Viết mã nguồn chương trình một cách nhanh nhất có thể.

Câu 2: Giả sử bạn cần thiết kế một chương trình để "Quản lý thư viện sách". Theo phương pháp làm mịn dần, bước đầu tiên ở mức tổng quát nhất có thể là gì?

  • A. Xác định các chức năng chính của hệ thống (ví dụ: thêm sách, cho mượn, trả sách).
  • B. Thiết kế cơ sở dữ liệu lưu trữ thông tin sách.
  • C. Viết mã cho chức năng tìm kiếm sách.
  • D. Tạo giao diện người dùng cho chương trình.

Câu 3: Trong phương pháp làm mịn dần, mỗi bước làm mịn tiếp theo có mối quan hệ như thế nào với bước trước đó?

  • A. Hoàn toàn độc lập và không liên quan.
  • B. Lặp lại toàn bộ các thao tác của bước trước nhưng với dữ liệu khác.
  • C. Chi tiết hóa và cụ thể hóa một hoặc nhiều thao tác trừu tượng của bước trước.
  • D. Đảo ngược thứ tự thực hiện các thao tác của bước trước.

Câu 4: Khi áp dụng phương pháp làm mịn dần để thiết kế thuật toán Sắp xếp chèn (Insertion Sort) cho một mảng A gồm n phần tử, bước làm mịn đầu tiên (tổng quát) thường là gì?

  • A. So sánh từng cặp phần tử liền kề và hoán đổi nếu sai thứ tự.
  • B. Duyệt qua từng phần tử từ vị trí thứ hai trở đi và chèn nó vào đúng vị trí trong phần đã sắp xếp trước đó.
  • C. Tìm phần tử nhỏ nhất trong mảng và đưa về đầu dãy.
  • D. Chia mảng thành hai nửa và sắp xếp độc lập từng nửa.

Câu 5: Xét một bước làm mịn trong thuật toán Sắp xếp chèn: "Chèn phần tử hiện tại A[i] vào đúng vị trí trong dãy con A[0...i-1] đã sắp xếp". Để làm mịn bước này, ta cần thực hiện các thao tác nào?

  • A. Sao chép toàn bộ dãy A[0...i-1] sang một mảng tạm.
  • B. Tìm vị trí đầu tiên trong A[0...i-1] mà A[i] nhỏ hơn phần tử tại đó.
  • C. Dịch chuyển các phần tử trong A[0...i-1] lớn hơn A[i] sang phải để tạo chỗ trống.
  • D. Kết hợp cả việc tìm vị trí và dịch chuyển các phần tử để tạo chỗ trống, sau đó đặt A[i] vào.

Câu 6: Ưu điểm chính của phương pháp làm mịn dần trong quá trình phát triển phần mềm là gì?

  • A. Giúp quản lý độ phức tạp của bài toán bằng cách giải quyết từng phần nhỏ hơn, dễ hiểu hơn.
  • B. Luôn tạo ra chương trình có hiệu suất cao nhất.
  • C. Giảm đáng kể thời gian viết mã nguồn.
  • D. Tự động sửa lỗi cú pháp trong chương trình.

Câu 7: Giả sử bạn đang ở bước làm mịn "Xử lý yêu cầu mượn sách" trong hệ thống quản lý thư viện. Thao tác nào sau đây không phải là một bước làm mịn hợp lý cho thao tác này?

  • A. Kiểm tra thông tin người mượn (thẻ thư viện hợp lệ?).
  • B. Kiểm tra tình trạng sách (còn trong kho hay đã có người mượn?).
  • C. Thiết kế giao diện hiển thị danh sách sách mới nhập.
  • D. Cập nhật trạng thái sách và thông tin người mượn trong cơ sở dữ liệu.

Câu 8: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-Down Design). Điều này phản ánh điều gì về cách tiếp cận của phương pháp?

  • A. Bắt đầu từ ý tưởng tổng quát nhất và đi sâu vào các chi tiết cụ thể hơn.
  • B. Bắt đầu từ các chi tiết nhỏ nhất và xây dựng dần lên thành chương trình hoàn chỉnh.
  • C. Thiết kế giao diện người dùng trước rồi mới làm các chức năng bên trong.
  • D. Chỉ áp dụng cho các bài toán có cấu trúc phân cấp rõ ràng.

Câu 9: Khi nào thì quá trình làm mịn dần trong thiết kế chương trình được coi là hoàn thành?

  • A. Khi đã viết xong toàn bộ mã nguồn.
  • B. Khi mọi thao tác đã được chi tiết hóa đủ mức để có thể chuyển trực tiếp thành các câu lệnh của ngôn ngữ lập trình.
  • C. Khi người thiết kế cảm thấy không còn ý tưởng nào để làm mịn thêm.
  • D. Sau khi chương trình đã được kiểm thử thành công.

Câu 10: Giả sử bạn đang thiết kế thuật toán đếm số cặp nghịch đảo (i, j) trong một dãy A sao cho i < j và A[i] > A[j]. Bước làm mịn đầu tiên (tổng quát) cho bài toán này là gì?

  • A. Sắp xếp dãy A theo thứ tự tăng dần.
  • B. Tìm phần tử lớn nhất và nhỏ nhất trong dãy.
  • C. Duyệt qua tất cả các cặp chỉ số (i, j) có i < j và kiểm tra điều kiện nghịch đảo.
  • D. Chia dãy thành hai nửa và đếm nghịch đảo trong từng nửa.

Câu 11: Xét bước làm mịn "Duyệt qua tất cả các cặp chỉ số (i, j) có i < j" trong bài toán đếm cặp nghịch đảo. Để làm mịn bước này thành các vòng lặp, cấu trúc vòng lặp nào là phù hợp?

  • A. Một vòng lặp ngoài cho i từ 0 đến n-2 và một vòng lặp trong cho j từ i+1 đến n-1.
  • B. Một vòng lặp cho i từ 0 đến n-1 và một vòng lặp cho j từ 0 đến n-1.
  • C. Chỉ cần một vòng lặp duy nhất cho i từ 0 đến n-1.
  • D. Một vòng lặp ngoài cho j từ 1 đến n-1 và một vòng lặp trong cho i từ 0 đến j-1.

Câu 12: Khi áp dụng phương pháp làm mịn dần, việc chia nhỏ bài toán thành các bước con giúp ích gì cho việc kiểm thử (testing) chương trình?

  • A. Chỉ cần kiểm thử chương trình một lần duy nhất ở cuối.
  • B. Loại bỏ hoàn toàn nhu cầu kiểm thử.
  • C. Làm cho việc kiểm thử trở nên ngẫu nhiên hơn.
  • D. Cho phép kiểm thử từng phần nhỏ (module) một cách độc lập và có hệ thống hơn.

Câu 13: Phương pháp làm mịn dần không đảm bảo điều gì sau đây?

  • A. Chương trình cuối cùng sẽ giải quyết được bài toán ban đầu.
  • B. Chương trình cuối cùng sẽ là chương trình hiệu quả nhất (về thời gian chạy hoặc bộ nhớ).
  • C. Quá trình thiết kế trở nên có cấu trúc và dễ theo dõi.
  • D. Dễ dàng hơn trong việc phân công công việc cho các thành viên trong nhóm (nếu làm việc nhóm).

Câu 14: Tại sao việc xác định rõ đầu vào (input) và đầu ra (output) là bước quan trọng đầu tiên trong phương pháp làm mịn dần?

  • A. Để biết chương trình cần bao nhiêu dòng mã.
  • B. Để chọn ngôn ngữ lập trình phù hợp.
  • C. Để hiểu rõ bài toán cần giải quyết là gì và kết quả mong đợi là gì, làm cơ sở cho các bước thiết kế tiếp theo.
  • D. Để ước tính thời gian hoàn thành dự án.

Câu 15: Khi làm mịn một bước "Thực hiện phép tính X", bạn cần chi tiết hóa các thao tác tính toán cụ thể sử dụng các phép toán cơ bản (+, -, *, /) và các biến. Đây là ví dụ về việc chuyển đổi từ mức trừu tượng sang mức nào?

  • A. Từ mức thuật toán sang mức yêu cầu người dùng.
  • B. Từ mức dữ liệu sang mức giao diện.
  • C. Từ mức chi tiết sang mức tổng quát.
  • D. Từ mức mô tả chức năng sang mức thao tác lập trình cơ bản.

Câu 16: Giả sử bạn đang làm mịn bước "Tìm kiếm thông tin sách" trong hệ thống quản lý thư viện. Bước làm mịn tiếp theo có thể là gì?

  • A. Yêu cầu người dùng nhập từ khóa tìm kiếm (ví dụ: tên sách, tác giả).
  • B. Hiển thị danh sách tất cả sách trong thư viện.
  • C. Thêm một cuốn sách mới vào cơ sở dữ liệu.
  • D. Sao lưu toàn bộ dữ liệu thư viện.

Câu 17: Trong quá trình làm mịn dần thuật toán sắp xếp chèn, sau khi dịch chuyển các phần tử lớn hơn giá trị cần chèn (value) sang phải, vị trí trống được tạo ra là vị trí nào?

  • A. Vị trí ban đầu của phần tử cần chèn.
  • B. Vị trí ngay sau phần tử cuối cùng nhỏ hơn hoặc bằng giá trị cần chèn.
  • C. Vị trí cuối cùng của mảng.
  • D. Vị trí đầu tiên của mảng.

Câu 18: Việc sử dụng phương pháp làm mịn dần giúp giảm thiểu rủi ro nào trong quá trình phát triển phần mềm?

  • A. Rủi ro về việc chương trình chạy quá nhanh.
  • B. Rủi ro về việc chương trình tiêu thụ quá ít bộ nhớ.
  • C. Rủi ro về việc bỏ sót các trường hợp xử lý hoặc gặp khó khăn khi chuyển từ ý tưởng sang mã lệnh.
  • D. Rủi ro về việc có quá nhiều người dùng sử dụng chương trình.

Câu 19: Xét bài toán "Tính tổng các số chẵn từ 1 đến N". Bước làm mịn đầu tiên có thể là gì?

  • A. Khởi tạo biến tổng bằng 0.
  • B. Đọc giá trị N từ người dùng.
  • C. Kiểm tra xem một số có phải là số chẵn hay không.
  • D. Duyệt qua các số từ 1 đến N, kiểm tra số chẵn và cộng vào tổng.

Câu 20: Tiếp tục bài toán "Tính tổng các số chẵn từ 1 đến N". Làm mịn bước "Duyệt qua các số từ 1 đến N" sẽ dẫn đến cấu trúc nào trong lập trình?

  • A. Cấu trúc rẽ nhánh if-else.
  • B. Cấu trúc lặp (ví dụ: for hoặc while).
  • C. Cấu trúc hàm con.
  • D. Cấu trúc dữ liệu mảng.

Câu 21: Một trong những lợi ích của việc làm mịn dần là giúp người lập trình có thể tập trung vào từng phần nhỏ của bài toán mà không bị choáng ngợp bởi độ phức tạp tổng thể. Điều này liên quan đến khía cạnh nào của phương pháp?

  • A. Khả năng tự động sửa lỗi.
  • B. Tốc độ biên dịch mã nguồn.
  • C. Tính mô đun hóa (modularity) và khả năng quản lý.
  • D. Yêu cầu cấu hình máy tính cao hơn.

Câu 22: Phương pháp làm mịn dần có thể được áp dụng cho loại bài toán nào trong lập trình?

  • A. Hầu hết các loại bài toán, từ đơn giản đến phức tạp.
  • B. Chỉ các bài toán liên quan đến xử lý số học.
  • C. Chỉ các bài toán có sẵn thuật toán cụ thể.
  • D. Chỉ các bài toán trong lĩnh vực trí tuệ nhân tạo.

Câu 23: Khi làm mịn dần một bước "Xử lý dữ liệu đầu vào", bạn có thể cần xem xét các trường hợp dữ liệu không hợp lệ (ví dụ: nhập chữ thay vì số). Việc xem xét các trường hợp ngoại lệ này thuộc bước nào trong quy trình làm mịn?

  • A. Chỉ ở bước tổng quát nhất.
  • B. Chỉ sau khi đã viết xong toàn bộ mã nguồn.
  • C. Không cần thiết phải xem xét trong quá trình thiết kế.
  • D. Ở các bước làm mịn chi tiết khi xử lý từng phần của dữ liệu hoặc thao tác.

Câu 24: Phương pháp làm mịn dần khuyến khích việc gì trước khi bắt tay vào viết mã nguồn chi tiết?

  • A. Tìm kiếm mã nguồn có sẵn trên mạng để sao chép.
  • B. Phân tích bài toán, xác định các bước giải quyết ở nhiều cấp độ chi tiết.
  • C. Hỏi người khác cách giải bài toán.
  • D. Bỏ qua bước thiết kế và bắt đầu lập trình ngay.

Câu 25: Giả sử bạn có bước làm mịn "Hiển thị kết quả". Để làm mịn bước này, bạn có thể chi tiết hóa nó thành các thao tác nào?

  • A. Tính toán lại kết quả.
  • B. Lưu kết quả vào tệp.
  • C. Định dạng kết quả (ví dụ: làm tròn số, thêm đơn vị) và in ra màn hình hoặc ghi vào tệp.
  • D. Xóa kết quả đã tính.

Câu 26: Trong phương pháp làm mịn dần, việc lựa chọn cấu trúc dữ liệu (ví dụ: mảng, danh sách liên kết) thường được thực hiện ở mức độ chi tiết nào?

  • A. Ở bước tổng quát nhất, ngay sau khi xác định đầu vào/đầu ra.
  • B. Ở các bước làm mịn chi tiết hơn, khi cần quyết định cách tổ chức dữ liệu để thực hiện các thao tác cụ thể.
  • C. Chỉ sau khi đã viết xong toàn bộ mã nguồn.
  • D. Không cần thiết phải xem xét trong quá trình thiết kế.

Câu 27: Xét bước làm mịn "Kiểm tra điều kiện dừng". Để làm mịn bước này, bạn cần xác định điều kiện logic cụ thể nào sẽ khiến một vòng lặp hoặc một quy trình kết thúc. Đây là ví dụ về việc làm mịn một thao tác điều khiển luồng chương trình. Phát biểu này ĐÚNG hay SAI?

  • A. ĐÚNG
  • B. SAI

Câu 28: Phương pháp làm mịn dần giúp người lập trình dễ dàng hơn trong việc phát hiện và sửa lỗi ở giai đoạn nào?

  • A. Chỉ ở giai đoạn cuối cùng, sau khi hoàn thành chương trình.
  • B. Chỉ trong giai đoạn viết mã.
  • C. Chỉ trong giai đoạn thiết kế tổng quát.
  • D. Trong suốt quá trình thiết kế và viết mã, vì mỗi phần nhỏ được làm rõ và có thể kiểm tra độc lập.

Câu 29: Khi làm mịn dần, việc sử dụng ngôn ngữ tự nhiên hoặc mã giả (pseudocode) ở các bước trung gian có mục đích gì?

  • A. Để chương trình chạy nhanh hơn.
  • B. Để mô tả các bước giải quyết một cách rõ ràng, dễ hiểu trước khi chuyển sang ngôn ngữ lập trình cụ thể.
  • C. Để chương trình sử dụng ít bộ nhớ hơn.
  • D. Để tự động tạo ra mã nguồn hoàn chỉnh.

Câu 30: So sánh phương pháp làm mịn dần với việc viết mã ngay lập tức (coding immediately) khi nhận được yêu cầu bài toán. Phương pháp làm mịn dần có lợi thế gì rõ rệt hơn?

  • A. Giảm thiểu khả năng mắc lỗi logic nghiêm trọng và giúp quản lý các bài toán phức tạp tốt hơn.
  • B. Luôn hoàn thành chương trình nhanh hơn trong mọi trường hợp.
  • C. Không cần phải sửa lỗi sau khi viết mã.
  • D. Chỉ phù hợp với các lập trình viên mới bắt đầu.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình chủ yếu tập trung vào nguyên tắc nào?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 2: Giả sử bạn cần thiết kế một chương trình để 'Quản lý thư viện sách'. Theo phương pháp làm mịn dần, bước đầu tiên ở mức tổng quát nhất có thể là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 3: Trong phương pháp làm mịn dần, mỗi bước làm mịn tiếp theo có mối quan hệ như thế nào với bước trước đó?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 4: Khi áp dụng phương pháp làm mịn dần để thiết kế thuật toán Sắp xếp chèn (Insertion Sort) cho một mảng A gồm n phần tử, bước làm mịn đầu tiên (tổng quát) thường là gì?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 5: Xét một bước làm mịn trong thuật toán Sắp xếp chèn: 'Chèn phần tử hiện tại A[i] vào đúng vị trí trong dãy con A[0...i-1] đã sắp xếp'. Để làm mịn bước này, ta cần thực hiện các thao tác nào?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 6: Ưu điểm chính của phương pháp làm mịn dần trong quá trình phát triển phần mềm là gì?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 7: Giả sử bạn đang ở bước làm mịn 'Xử lý yêu cầu mượn sách' trong hệ thống quản lý thư viện. Thao tác nào sau đây *không* phải là một bước làm mịn hợp lý cho thao tác này?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 8: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-Down Design). Điều này phản ánh điều gì về cách tiếp cận của phương pháp?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 9: Khi nào thì quá trình làm mịn dần trong thiết kế chương trình được coi là hoàn thành?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 10: Giả sử bạn đang thiết kế thuật toán đếm số cặp nghịch đảo (i, j) trong một dãy A sao cho i < j và A[i] > A[j]. Bước làm mịn đầu tiên (tổng quát) cho bài toán này là gì?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 11: Xét bước làm mịn 'Duyệt qua tất cả các cặp chỉ số (i, j) có i < j' trong bài toán đếm cặp nghịch đảo. Để làm mịn bước này thành các vòng lặp, cấu trúc vòng lặp nào là phù hợp?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 12: Khi áp dụng phương pháp làm mịn dần, việc chia nhỏ bài toán thành các bước con giúp ích gì cho việc kiểm thử (testing) chương trình?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 13: Phương pháp làm mịn dần *không* đảm bảo điều gì sau đây?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 14: Tại sao việc xác định rõ đầu vào (input) và đầu ra (output) là bước quan trọng đầu tiên trong phương pháp làm mịn dần?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 15: Khi làm mịn một bước 'Thực hiện phép tính X', bạn cần chi tiết hóa các thao tác tính toán cụ thể sử dụng các phép toán cơ bản (+, -, *, /) và các biến. Đây là ví dụ về việc chuyển đổi từ mức trừu tượng sang mức nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 16: Giả sử bạn đang làm mịn bước 'Tìm kiếm thông tin sách' trong hệ thống quản lý thư viện. Bước làm mịn tiếp theo có thể là gì?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 17: Trong quá trình làm mịn dần thuật toán sắp xếp chèn, sau khi dịch chuyển các phần tử lớn hơn giá trị cần chèn (value) sang phải, vị trí trống được tạo ra là vị trí nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 18: Việc sử dụng phương pháp làm mịn dần giúp giảm thiểu rủi ro nào trong quá trình phát triển phần mềm?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 19: Xét bài toán 'Tính tổng các số chẵn từ 1 đến N'. Bước làm mịn đầu tiên có thể là gì?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 20: Tiếp tục bài toán 'Tính tổng các số chẵn từ 1 đến N'. Làm mịn bước 'Duyệt qua các số từ 1 đến N' sẽ dẫn đến cấu trúc nào trong lập trình?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 21: Một trong những lợi ích của việc làm mịn dần là giúp người lập trình có thể tập trung vào từng phần nhỏ của bài toán mà không bị choáng ngợp bởi độ phức tạp tổng thể. Điều này liên quan đến khía cạnh nào của phương pháp?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 22: Phương pháp làm mịn dần có thể được áp dụng cho loại bài toán nào trong lập trình?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 23: Khi làm mịn dần một bước 'Xử lý dữ liệu đầu vào', bạn có thể cần xem xét các trường hợp dữ liệu không hợp lệ (ví dụ: nhập chữ thay vì số). Việc xem xét các trường hợp ngoại lệ này thuộc bước nào trong quy trình làm mịn?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 24: Phương pháp làm mịn dần khuyến khích việc gì trước khi bắt tay vào viết mã nguồn chi tiết?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 25: Giả sử bạn có bước làm mịn 'Hiển thị kết quả'. Để làm mịn bước này, bạn có thể chi tiết hóa nó thành các thao tác nào?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 26: Trong phương pháp làm mịn dần, việc lựa chọn cấu trúc dữ liệu (ví dụ: mảng, danh sách liên kết) thường được thực hiện ở mức độ chi tiết nào?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 27: Xét bước làm mịn 'Kiểm tra điều kiện dừng'. Để làm mịn bước này, bạn cần xác định điều kiện logic cụ thể nào sẽ khiến một vòng lặp hoặc một quy trình kết thúc. Đây là ví dụ về việc làm mịn một thao tác điều khiển luồng chương trình. Phát biểu này ĐÚNG hay SAI?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 28: Phương pháp làm mịn dần giúp người lập trình dễ dàng hơn trong việc phát hiện và sửa lỗi ??? giai đoạn nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 29: Khi làm mịn dần, việc sử dụng ngôn ngữ tự nhiên hoặc mã giả (pseudocode) ở các bước trung gian có mục đích gì?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 09

Câu 30: So sánh phương pháp làm mịn dần với việc viết mã ngay lập tức (coding immediately) khi nhận được yêu cầu bài toán. Phương pháp làm mịn dần có lợi thế gì rõ rệt hơn?

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 10

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình - Đề 10 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình là gì?

  • A. Phương pháp viết mã chương trình trực tiếp từ yêu cầu ban đầu.
  • B. Quá trình chia nhỏ và chi tiết hóa các bước giải quyết vấn đề từ ý tưởng tổng quan đến các thao tác cụ thể.
  • C. Kỹ thuật tối ưu hóa tốc độ thực thi của chương trình sau khi hoàn thành.
  • D. Cách tổ chức dữ liệu trong bộ nhớ để chương trình chạy hiệu quả hơn.

Câu 2: Mục đích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

  • A. Giảm thiểu số lượng biến cần sử dụng trong chương trình.
  • B. Tự động phát hiện và sửa lỗi cú pháp trong mã lệnh.
  • C. Đảm bảo chương trình luôn có giao diện đồ họa hấp dẫn.
  • D. Giúp lập trình viên quản lý sự phức tạp của bài toán lớn bằng cách chia thành các phần nhỏ hơn, dễ xử lý hơn.

Câu 3: Khi bắt đầu thiết kế một chương trình phức tạp theo phương pháp làm mịn dần, bước đầu tiên thường là gì?

  • A. Viết các hàm và thủ tục chi tiết nhất.
  • B. Kiểm tra hiệu năng của các đoạn mã mẫu.
  • C. Xác định bài toán tổng thể, đầu vào và đầu ra cần đạt được.
  • D. Thiết kế giao diện người dùng (UI).

Câu 4: Giả sử bạn đang thiết kế chương trình "Quản lý thư viện". Ở mức làm mịn đầu tiên, bạn có thể xác định các tác vụ chính như "Thêm sách", "Tìm kiếm sách", "Cho mượn sách", "Trả sách". Đây là biểu hiện của bước nào trong phương pháp làm mịn dần?

  • A. Chia bài toán lớn thành các bài toán con ở mức tổng quát.
  • B. Chi tiết hóa từng thao tác nhỏ nhất.
  • C. Kiểm tra tính đúng đắn của thuật toán.
  • D. Viết mã nguồn cho toàn bộ chương trình.

Câu 5: Tiếp theo ví dụ ở Câu 4, bạn quyết định làm mịn tác vụ "Thêm sách". Bạn chia nhỏ nó thành các bước: "Nhập thông tin sách", "Kiểm tra thông tin hợp lệ", "Lưu thông tin vào cơ sở dữ liệu". Đây là bước nào trong quá trình làm mịn dần?

  • A. Xác định đầu vào và đầu ra của bài toán tổng thể.
  • B. Chi tiết hóa một bài toán con (tác vụ) thành các bước cụ thể hơn.
  • C. Hoàn thiện mã lệnh cho một chức năng.
  • D. Tích hợp các mô-đun đã hoàn thành.

Câu 6: Quá trình làm mịn dần kết thúc khi nào?

  • A. Tất cả các bước đã được chi tiết hóa đủ để có thể chuyển trực tiếp thành các câu lệnh lập trình.
  • B. Khi toàn bộ chương trình đã chạy thử thành công mà không có lỗi.
  • C. Khi người dùng cuối đã xác nhận yêu cầu của họ.
  • D. Khi tất cả các hàm và biến đã được đặt tên.

Câu 7: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-down design). Điều này có ý nghĩa gì?

  • A. Thiết kế bắt đầu từ các chi tiết nhỏ nhất và xây dựng lên thành chương trình hoàn chỉnh.
  • B. Chỉ áp dụng cho các chương trình có cấu trúc phân cấp.
  • C. Thiết kế bắt đầu từ ý tưởng tổng thể, sau đó chia nhỏ và chi tiết hóa dần các phần.
  • D. Ưu tiên thiết kế giao diện người dùng trước khi xử lý logic bên trong.

Câu 8: Trong thuật toán sắp xếp chèn (Insertion Sort), việc làm mịn dần giúp chúng ta đi từ ý tưởng "Sắp xếp dãy số" đến các bước cụ thể như "Duyệt qua từng phần tử", "Chèn phần tử đang xét vào đúng vị trí trong phần đã sắp xếp". Bước "Chèn phần tử đang xét vào đúng vị trí" là kết quả của việc làm mịn từ bước nào ở mức cao hơn?

  • A. Khởi tạo mảng.
  • B. So sánh hai phần tử bất kỳ.
  • C. Duyệt qua từng phần tử của dãy.
  • D. Sắp xếp dãy số.

Câu 9: Khi làm mịn bước "Chèn phần tử A[i] vào đúng vị trí trong phần dãy con đã sắp xếp A[0...i-1]" của thuật toán sắp xếp chèn, chúng ta thường thực hiện các thao tác nào?

  • A. Hoán đổi A[i] với A[0].
  • B. So sánh A[i] với A[i-1] và dừng lại nếu A[i] < A[i-1].
  • C. Lưu A[i] vào biến tạm, dịch chuyển các phần tử lớn hơn A[i] sang phải trong dãy con A[0...i-1], sau đó chèn A[i] vào vị trí trống.
  • D. Dịch chuyển tất cả các phần tử từ A[0] đến A[i-1] sang phải một vị trí.

Câu 10: Xét bài toán "Đếm số cặp nghịch đảo trong một dãy số A gồm n phần tử". Một cặp (i, j) được gọi là nghịch đảo nếu i < j và A[i] > A[j]. Ở mức làm mịn đầu tiên, bài toán có thể được chia thành các bước nào?

  • A. Sắp xếp dãy số, sau đó đếm.
  • B. Khởi tạo bộ đếm, duyệt qua tất cả các cặp phần tử (i, j) với i < j, kiểm tra điều kiện nghịch đảo và tăng bộ đếm nếu đúng.
  • C. Chia dãy thành hai nửa, đếm nghịch đảo trong mỗi nửa.
  • D. Sử dụng một mảng phụ để lưu trữ số lượng nghịch đảo.

Câu 11: Trong thuật toán đếm số cặp nghịch đảo bằng cách duyệt tất cả các cặp (i, j) với i < j, bước "Duyệt qua tất cả các cặp phần tử (i, j) với i < j" có thể được làm mịn thành cấu trúc lặp nào trong lập trình?

  • A. Một vòng lặp duy nhất từ 0 đến n-1.
  • B. Hai vòng lặp lồng nhau, cả hai đều chạy từ 0 đến n-1.
  • C. Hai vòng lặp lồng nhau: vòng ngoài chạy i từ 0 đến n-1, vòng trong chạy j từ 0 đến n-1.
  • D. Hai vòng lặp lồng nhau: vòng ngoài chạy i từ 0 đến n-2, vòng trong chạy j từ i+1 đến n-1.

Câu 12: Sau khi áp dụng phương pháp làm mịn dần cho một bài toán, kết quả thu được ở mức chi tiết nhất là gì?

  • A. Một tập hợp các thao tác đủ chi tiết để chuyển trực tiếp thành mã lệnh trong ngôn ngữ lập trình.
  • B. Bản vẽ giao diện người dùng hoàn chỉnh.
  • C. Danh sách các biến và kiểu dữ liệu cần thiết.
  • D. Báo cáo phân tích yêu cầu từ người dùng.

Câu 13: Ưu điểm của phương pháp làm mịn dần là gì?

  • A. Chỉ áp dụng hiệu quả cho các bài toán đơn giản.
  • B. Giúp cấu trúc chương trình rõ ràng, dễ hiểu, dễ kiểm thử và bảo trì.
  • C. Tự động tạo ra mã nguồn hoàn chỉnh mà không cần lập trình viên can thiệp.
  • D. Đảm bảo chương trình luôn chạy nhanh hơn các phương pháp khác.

Câu 14: Khi làm mịn một bước, ví dụ từ "Xử lý dữ liệu" thành "Đọc dữ liệu", "Kiểm tra tính hợp lệ", "Tính toán kết quả", điều gì được thể hiện qua quá trình này?

  • A. Thay đổi yêu cầu ban đầu của bài toán.
  • B. Gộp nhiều thao tác nhỏ thành một thao tác lớn hơn.
  • C. Giảm bớt các bước không cần thiết.
  • D. Phân rã một nhiệm vụ phức tạp thành các nhiệm vụ con đơn giản hơn.

Câu 15: Giả sử bạn đang làm mịn bước "Tính tổng các số chẵn trong danh sách". Bạn có thể làm mịn nó thành các bước nào?

  • A. Sắp xếp danh sách, sau đó tính tổng.
  • B. Tạo một danh sách mới chỉ chứa các số chẵn.
  • C. Khởi tạo biến tổng bằng 0, duyệt qua từng phần tử trong danh sách, nếu phần tử là số chẵn thì cộng vào biến tổng.
  • D. Tìm phần tử lớn nhất và nhỏ nhất trong danh sách.

Câu 16: Phương pháp làm mịn dần đặc biệt hữu ích trong trường hợp nào?

  • A. Khi thiết kế các chương trình có quy mô lớn và phức tạp.
  • B. Khi cần viết các chương trình rất nhỏ, chỉ vài dòng lệnh.
  • C. Khi chỉ cần sửa lỗi trong một chương trình đã có.
  • D. Khi chuyển đổi chương trình từ ngôn ngữ lập trình này sang ngôn ngữ khác.

Câu 17: Khi làm mịn dần thuật toán sắp xếp chèn, giả sử bạn đang xử lý phần tử A[i] và đã lưu giá trị của nó vào biến `value`. Bạn cần dịch chuyển các phần tử lớn hơn `value` sang phải. Vòng lặp để thực hiện việc dịch chuyển này sẽ bắt đầu từ đâu và kết thúc khi nào?

  • A. Bắt đầu từ A[0] đến A[i-1].
  • B. Bắt đầu từ A[i-1] lùi về A[0] cho đến khi gặp phần tử nhỏ hơn hoặc bằng `value` hoặc đến đầu dãy.
  • C. Bắt đầu từ A[i+1] đến cuối dãy.
  • D. Bắt đầu từ A[0] đến A[i].

Câu 18: Việc làm mịn dần giúp lập trình viên tránh được vấn đề gì khi đối mặt với một bài toán lớn?

  • A. Lỗi cú pháp.
  • B. Chương trình chạy chậm.
  • C. Bị choáng ngợp bởi sự phức tạp và không biết bắt đầu từ đâu.
  • D. Thiếu tài nguyên bộ nhớ.

Câu 19: Xét bước "Kiểm tra điều kiện nghịch đảo" trong thuật toán đếm cặp nghịch đảo bằng duyệt tất cả các cặp (i, j) với i < j. Bước này có thể được làm mịn thành câu lệnh điều kiện nào?

  • A. Nếu A[i] > A[j] thì...
  • B. Nếu i > j thì...
  • C. Nếu A[i] < A[j] thì...
  • D. Nếu i < j thì...

Câu 20: Khi làm mịn một bước, điều quan trọng cần đảm bảo là gì?

  • A. Các bước con phải sử dụng ít biến hơn bước cha.
  • B. Các bước con phải có độ phức tạp thời gian thấp hơn.
  • C. Các bước con phải có cùng tên với bước cha.
  • D. Tập hợp các bước con sau khi làm mịn phải giải quyết đầy đủ và chính xác nhiệm vụ của bước cha.

Câu 21: Giả sử bạn đang làm mịn bước "Tìm kiếm phần tử X trong danh sách". Ở mức chi tiết hơn, bạn có thể làm mịn thành các bước nào, tùy thuộc vào thuật toán tìm kiếm bạn chọn?

  • A. Sắp xếp danh sách trước khi tìm kiếm.
  • B. Duyệt tuần tự từng phần tử và so sánh với X, hoặc chia đôi danh sách và tìm kiếm trong nửa thích hợp (nếu danh sách đã sắp xếp).
  • C. Chỉ kiểm tra phần tử đầu tiên và phần tử cuối cùng.
  • D. Xóa phần tử X khỏi danh sách.

Câu 22: Việc áp dụng phương pháp làm mịn dần có giúp ích cho quá trình kiểm thử (testing) chương trình không? Tại sao?

  • A. Có, vì chương trình được chia thành các phần nhỏ, giúp kiểm thử từng phần độc lập và dễ dàng xác định vị trí lỗi.
  • B. Không, vì nó làm tăng số lượng các bước cần kiểm thử.
  • C. Chỉ giúp kiểm thử giao diện người dùng.
  • D. Giúp kiểm thử tự động dễ dàng hơn, nhưng kiểm thử thủ công thì khó hơn.

Câu 23: Trong thuật toán sắp xếp chèn, sau khi hoàn thành việc chèn phần tử A[i] vào đúng vị trí trong dãy con đã sắp xếp A[0...i-1], điều gì đúng về trạng thái của dãy?

  • A. Toàn bộ dãy A[0...n-1] đã được sắp xếp.
  • B. Chỉ phần tử A[i] nằm ở vị trí đúng của nó trong dãy ban đầu.
  • C. Dãy con A[0...i] đã được sắp xếp.
  • D. Dãy con A[i+1...n-1] đã được sắp xếp.

Câu 24: Phương pháp làm mịn dần khuyến khích lập trình viên suy nghĩ về bài toán theo cách nào?

  • A. Từ các chi tiết nhỏ đến bức tranh tổng thể.
  • B. Chỉ tập trung vào hiệu suất thực thi.
  • C. Theo thứ tự ngẫu nhiên các bước thực hiện.
  • D. Từ bức tranh tổng thể đến các chi tiết cụ thể.

Câu 25: Khi đếm số cặp nghịch đảo trong dãy A = [3, 1, 4, 2] bằng cách duyệt cặp (i, j) với i < j, cặp nào sau đây KHÔNG phải là cặp nghịch đảo?

  • A. (0, 1) vì i=0 < j=1 và A[0]=3 > A[1]=1.
  • B. (0, 3) vì i=0 < j=3 và A[0]=3 > A[3]=2.
  • C. (1, 2) vì i=1 < j=2 và A[1]=1 < A[2]=4.
  • D. (2, 3) vì i=2 < j=3 và A[2]=4 > A[3]=2.

Câu 26: Lợi ích nào sau đây KHÔNG phải là lợi ích trực tiếp của việc áp dụng phương pháp làm mịn dần?

  • A. Giúp dễ dàng phân công công việc cho các thành viên trong nhóm.
  • B. Làm cho quá trình thiết kế có hệ thống và ít sai sót hơn.
  • C. Thuận lợi cho việc nâng cấp và mở rộng chương trình sau này.
  • D. Giảm thời gian chạy của chương trình đã hoàn thành.

Câu 27: Giả sử bạn có bước làm mịn "Xử lý yêu cầu người dùng". Nếu yêu cầu có thể là "Đăng nhập" hoặc "Đăng ký", bạn sẽ làm mịn bước này như thế nào?

  • A. Sử dụng cấu trúc điều kiện: Nếu yêu cầu là "Đăng nhập" thì thực hiện các bước "Đăng nhập"; Ngược lại nếu yêu cầu là "Đăng ký" thì thực hiện các bước "Đăng ký".
  • B. Thực hiện cả hai quy trình "Đăng nhập" và "Đăng ký" liên tiếp.
  • C. Chọn ngẫu nhiên một trong hai quy trình để thực hiện.
  • D. Yêu cầu người dùng xác nhận lại yêu cầu.

Câu 28: Trong quá trình làm mịn dần, việc mô tả các bước ở mỗi cấp độ nên sử dụng ngôn ngữ như thế nào?

  • A. Hoàn toàn bằng mã nguồn của ngôn ngữ lập trình.
  • B. Ngôn ngữ tự nhiên kết hợp với các ký hiệu hoặc cấu trúc giả mã (pseudocode) để thể hiện logic rõ ràng.
  • C. Chỉ sử dụng sơ đồ khối (flowchart).
  • D. Một ngôn ngữ hình ảnh phức tạp chỉ dành cho chuyên gia.

Câu 29: Điều gì xảy ra nếu một bước trong quá trình làm mịn dần được làm mịn chưa đủ chi tiết?

  • A. Chương trình sẽ tự động hoàn thành phần thiếu sót.
  • B. Quá trình lập trình sẽ trở nên dễ dàng hơn.
  • C. Lập trình viên có thể gặp khó khăn khi chuyển bước đó thành mã lệnh cụ thể, hoặc có thể bỏ sót các trường hợp cần xử lý.
  • D. Hiệu suất của chương trình sẽ tăng lên.

Câu 30: Phương pháp làm mịn dần hỗ trợ việc thiết kế các thuật toán như thế nào?

  • A. Bỏ qua giai đoạn thiết kế và chuyển thẳng sang lập trình.
  • B. Chỉ tạo ra các thuật toán có độ phức tạp thời gian thấp.
  • C. Tự động sinh ra thuật toán tối ưu cho mọi bài toán.
  • D. Cung cấp một cách tiếp cận có cấu trúc để xây dựng thuật toán từ ý tưởng tổng thể đến các bước thực hiện chi tiết.

1 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 1: Phương pháp làm mịn dần (Stepwise Refinement) trong thiết kế chương trình là gì?

2 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 2: Mục đích chính của việc áp dụng phương pháp làm mịn dần trong thiết kế chương trình là gì?

3 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 3: Khi bắt đầu thiết kế một chương trình phức tạp theo phương pháp làm mịn dần, bước đầu tiên thường là gì?

4 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 4: Giả sử bạn đang thiết kế chương trình 'Quản lý thư viện'. Ở mức làm mịn đầu tiên, bạn có thể xác định các tác vụ chính như 'Thêm sách', 'Tìm kiếm sách', 'Cho mượn sách', 'Trả sách'. Đây là biểu hiện của bước nào trong phương pháp làm mịn dần?

5 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 5: Tiếp theo ví dụ ở Câu 4, bạn quyết định làm mịn tác vụ 'Thêm sách'. Bạn chia nhỏ nó thành các bước: 'Nhập thông tin sách', 'Kiểm tra thông tin hợp lệ', 'Lưu thông tin vào cơ sở dữ liệu'. Đây là bước nào trong quá trình làm mịn dần?

6 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 6: Quá trình làm mịn dần kết thúc khi nào?

7 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 7: Phương pháp làm mịn dần còn được gọi là phương pháp thiết kế từ trên xuống (Top-down design). Điều này có ý nghĩa gì?

8 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 8: Trong thuật toán sắp xếp chèn (Insertion Sort), việc làm mịn dần giúp chúng ta đi từ ý tưởng 'Sắp xếp dãy số' đến các bước cụ thể như 'Duyệt qua từng phần tử', 'Chèn phần tử đang xét vào đúng vị trí trong phần đã sắp xếp'. Bước 'Chèn phần tử đang xét vào đúng vị trí' là kết quả của việc làm mịn từ bước nào ở mức cao hơn?

9 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 9: Khi làm mịn bước 'Chèn phần tử A[i] vào đúng vị trí trong phần dãy con đã sắp xếp A[0...i-1]' của thuật toán sắp xếp chèn, chúng ta thường thực hiện các thao tác nào?

10 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 10: Xét bài toán 'Đếm số cặp nghịch đảo trong một dãy số A gồm n phần tử'. Một cặp (i, j) được gọi là nghịch đảo nếu i < j và A[i] > A[j]. Ở mức làm mịn đầu tiên, bài toán có thể được chia thành các bước nào?

11 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 11: Trong thuật toán đếm số cặp nghịch đảo bằng cách duyệt tất cả các cặp (i, j) với i < j, bước 'Duyệt qua tất cả các cặp phần tử (i, j) với i < j' có thể được làm mịn thành cấu trúc lặp nào trong lập trình?

12 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 12: Sau khi áp dụng phương pháp làm mịn dần cho một bài toán, kết quả thu được ở mức chi tiết nhất là gì?

13 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 13: Ưu điểm của phương pháp làm mịn dần là gì?

14 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 14: Khi làm mịn một bước, ví dụ từ 'Xử lý dữ liệu' thành 'Đọc dữ liệu', 'Kiểm tra tính hợp lệ', 'Tính toán kết quả', điều gì được thể hiện qua quá trình này?

15 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 15: Giả sử bạn đang làm mịn bước 'Tính tổng các số chẵn trong danh sách'. Bạn có thể làm mịn nó thành các bước nào?

16 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 16: Phương pháp làm mịn dần đặc biệt hữu ích trong trường hợp nào?

17 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 17: Khi làm mịn dần thuật toán sắp xếp chèn, giả sử bạn đang xử lý phần tử A[i] và đã lưu giá trị của nó vào biến `value`. Bạn cần dịch chuyển các phần tử lớn hơn `value` sang phải. Vòng lặp để thực hiện việc dịch chuyển này sẽ bắt đầu từ đâu và kết thúc khi nào?

18 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 18: Việc làm mịn dần giúp lập trình viên tránh được vấn đề gì khi đối mặt với một bài toán lớn?

19 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 19: Xét bước 'Kiểm tra điều kiện nghịch đảo' trong thuật toán đếm cặp nghịch đảo bằng duyệt tất cả các cặp (i, j) với i < j. Bước này có thể được làm mịn thành câu lệnh điều kiện nào?

20 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 20: Khi làm mịn một bước, điều quan trọng cần đảm bảo là gì?

21 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 21: Giả sử bạn đang làm mịn bước 'Tìm kiếm phần tử X trong danh sách'. Ở mức chi tiết hơn, bạn có thể làm mịn thành các bước nào, tùy thuộc vào thuật toán tìm kiếm bạn chọn?

22 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 22: Việc áp dụng phương pháp làm mịn dần có giúp ích cho quá trình kiểm thử (testing) chương trình không? Tại sao?

23 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 23: Trong thuật toán sắp xếp chèn, sau khi hoàn thành việc chèn phần tử A[i] vào đúng vị trí trong dãy con đã sắp xếp A[0...i-1], điều gì đúng về trạng thái của dãy?

24 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 24: Phương pháp làm mịn dần khuyến khích lập trình viên suy nghĩ về bài toán theo cách nào?

25 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 25: Khi đếm số cặp nghịch đảo trong dãy A = [3, 1, 4, 2] bằng cách duyệt cặp (i, j) với i < j, cặp nào sau đây KHÔNG phải là cặp nghịch đảo?

26 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 26: Lợi ích nào sau đây KHÔNG phải là lợi ích trực tiếp của việc áp dụng phương pháp làm mịn dần?

27 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 27: Giả sử bạn có bước làm mịn 'Xử lý yêu cầu người dùng'. Nếu yêu cầu có thể là 'Đăng nhập' hoặc 'Đăng ký', bạn sẽ làm mịn bước này như thế nào?

28 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 28: Trong quá trình làm mịn dần, việc mô tả các bước ở mỗi cấp độ nên sử dụng ngôn ngữ như thế nào?

29 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 29: Điều gì xảy ra nếu một bước trong quá trình làm mịn dần được làm mịn chưa đủ chi tiết?

30 / 30

Category: Trắc nghiệm Tin học 11 Kết nối tri thức Bài 26: Phương pháp làm mịn dần trong thiết kế chương trình

Tags: Bộ đề 10

Câu 30: Phương pháp làm mịn dần hỗ trợ việc thiết kế các thuật toán như thế nào?

Viết một bình luận