Tạo Trắc Nghiệm

Trắc nghiệm Tin học 11 Kết nối tri thức Bài 27 (có đáp án): Thực hành thiết kế chương trình theo phương pháp làm mịn dần

15 câu · Đề theo bài

Xem trước: đọc nhanh mọi câu dạng chữ, chưa tính giờ, chưa hiện đáp án.
Luyện tập: chọn đáp án là biết đúng sai ngay, kèm lời giải.
Thi thử: nộp bài mới chấm điểm và hiện lời giải.

Câu 1

Phương pháp làm mịn dần có thể hiểu là gì trong quá trình thiết kế chương trình?

Đáp án và lời giải

Đáp án: A

Câu 2

Khi kiểm tra xem dãy số có phải là một hoán vị của dãy số từ 1 đến n, bước đầu tiên theo phương pháp làm mịn dần là gì?

Đáp án và lời giải

Đáp án: B

Câu 3

  Trong nhiệm vụ kiểm tra hoán vị, tại sao cần phải sắp xếp dãy A?

Đáp án và lời giải

Đáp án: B

Câu 4

Khi kiểm tra tính hoán vị, hàm kt_hoanvi(A) trả về gì nếu dãy A không phải là hoán vị của dãy từ 1 đến n?

Đáp án và lời giải

Đáp án: B

Câu 5

Trong bài toán đếm số lần lặp, nếu cần đếm số lần xuất hiện của một phần tử x trong A, phương pháp hiệu quả nhất là gì?

Đáp án và lời giải

Đáp án: A

Câu 6

Khi thực hiện phương pháp làm mịn dần, bước nào sau đây là không cần thiết khi đã sắp xếp dãy A?

Đáp án và lời giải

Đáp án: D

Câu 7

Trong nhiệm vụ kiểm tra hoán vị, nếu dãy A đã được sắp xếp và có độ dài khác n, kết quả của hàm kt_hoanvi(A) sẽ là gì?

Đáp án và lời giải

Đáp án: B

Câu 8

Khi đếm số lần lặp, tại sao cần phải tạo dãy mới B để lưu số lần lặp của từng phần tử?

Đáp án và lời giải

Đáp án: A

Câu 9

Trong nhiệm vụ kiểm tra phần tử trùng, sau khi đã sắp xếp dãy A, bước tiếp theo cần làm là gì?

Đáp án và lời giải

Đáp án: B

Câu 10

Một xâu kí tự là đối xứng nếu:

Đáp án và lời giải

Đáp án: C

Câu 11

Trong thiết kế thuật toán kiểm tra hoán vị (Nhiệm vụ 1), bước nào sau đây là bước phù hợp để đảm bảo dãy A là một hoán vị của dãy số 1, 2, ..., n?
  • a)Kiểm tra độ dài của dãy A và đảm bảo độ dài bằng n.
  • b)Kiểm tra xem tất cả các số từ 1 đến n có mặt trong dãy A hay không.
  • c)Tính tổng các phần tử trong dãy A và so sánh với tổng của dãy từ 1 đến n.
  • d)Sắp xếp dãy A và so sánh với dãy 1, 2, ..., n.

Đáp án và lời giải

Đáp án: a) Đúng; b) Đúng; c) Sai; d) Đúng

Câu 12

Trong nhiệm vụ đếm số lần lặp (Nhiệm vụ 2), bước nào sau đây là hợp lý để tính số lần lặp của từng phần tử trong dãy A theo phương pháp làm mịn dần?
  • a)Sử dụng một vòng lặp để duyệt từng phần tử của dãy A và đếm số lần xuất hiện của nó.
  • b)Sử dụng một hàm lap(x, A) để tính số lần lặp của một phần tử trong dãy A.
  • c)Sắp xếp dãy A và đếm số lần xuất hiện của các phần tử liên tiếp nhau.
  • d)Kiểm tra mỗi phần tử của dãy A có trùng lặp hay không bằng cách so sánh với các phần tử phía sau nó.

Đáp án và lời giải

Đáp án: a) Đúng; b) Đúng; c) Sai; d) Sai

Câu 13

Trong nhiệm vụ kiểm tra hoán vị, thay vì sắp xếp dãy số A, ta có thể kiểm tra các điều kiện nào để xác định A có phải là hoán vị của dãy 1 đến n không?

Đáp án và lời giải

Đáp án: Có thể kiểm tra hai điều kiện: (1) Độ dài của dãy A phải bằng n, và (2) Mỗi số từ 1 đến n phải xuất hiện trong A đúng một lần. Giải thích: Cách làm này giảm bớt độ phức tạp so với việc sắp xếp. Thay vì sắp xếp toàn bộ dãy, chỉ cần duyệt qua A và kiểm tra các điều kiện về độ dài và sự xuất hiện của các số. Phương pháp này hiệu quả hơn cho bài toán kiểm tra hoán vị.

Câu 14

Trong nhiệm vụ đếm số lần lặp của mỗi phần tử trong dãy A, nếu dãy A được sắp xếp tăng dần trước, liệu có thể cải tiến thuật toán đếm số lần lặp tốt hơn không?

Đáp án và lời giải

Đáp án: Có, nếu dãy A đã được sắp xếp, ta có thể chỉ cần duyệt qua dãy một lần, đếm số lần lặp liên tiếp của từng phần tử, và không cần phải đếm từng phần tử từ đầu nữa. Giải thích: Việc sắp xếp giúp tập trung đếm số lần xuất hiện của từng phần tử liên tiếp, tiết kiệm thời gian vì không cần lặp lại việc kiểm tra cả dãy cho mỗi phần tử. Phương pháp này cải tiến hiệu suất so với việc đếm từng phần tử riêng lẻ.

Câu 15

Thiết kế thuật toán kiểm tra xem trong dãy A có phần tử nào trùng nhau không, với quy trình theo phương pháp làm mịn dần.

Đáp án và lời giải

Đáp án: Khởi tạo một danh sách trống để lưu các phần tử đã duyệt qua. Duyệt qua từng phần tử của dãy A, nếu phần tử đã có trong danh sách thì trả về "có", nếu chưa có thì thêm vào danh sách. Kết thúc vòng lặp mà không phát hiện trùng nhau thì trả về "không". Giải thích: Phương pháp làm mịn dần bắt đầu với ý tưởng duyệt qua từng phần tử, kiểm tra từng bước và chỉ thêm vào danh sách nếu phần tử chưa có. Cách làm này giúp phát hiện sự trùng lặp ngay khi có phần tử lặp lại, tránh phải kiểm tra dãy nhiều lần, giảm thiểu thời gian xử lý.