Phần 1: Câu hỏi Trắc nghiệm (Nhận biết & Thông hiểu)
Câu 1. Nội dung nào sau đây phản ánh đúng kiến thức cần ghi nhớ trong bài Bài 23: Kiểm thử và đánh giá chương trình? A. Kiểm thử: chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá: nhận xét tính đúng đắn và hiệu quả. B. Bỏ qua các khái niệm cơ bản và chỉ học thuộc lòng kết quả cuối cùng mà không cần hiểu bản chất. C. Chỉ áp dụng kiến thức trong một trường hợp duy nhất, không cần kiểm tra điều kiện hay đơn vị. D. Các nội dung trong bài hoàn toàn độc lập và không có mối liên hệ nào với thực tiễn hay các bài học khác.
Câu 2. Khi học và vận dụng bài Bài 23: Kiểm thử và đánh giá chương trình, khẳng định nào dưới đây là chính xác? A. Không cần đọc kĩ đề bài hay phân tích dữ kiện trước khi thực hiện các bước giải. B. Ba loại lỗi: lỗi cú pháp, lỗi logic, lỗi thời gian chạy. C. Mọi khái niệm trong bài đều có thể thay thế tùy ý cho nhau mà không làm thay đổi kết quả. D. Chỉ cần ghi đáp số ngắn gọn, bỏ qua toàn bộ bước lập luận, giải thích và kiểm tra lại.
Câu 3. Theo phần Kiến thức trọng tâm của bài Bài 23: Kiểm thử và đánh giá chương trình, phát biểu nào sau đây là đúng? A. Kết luận ngay kết quả khi chưa đối chiếu với quy tắc hoặc định nghĩa trong bài học. B. Thay đổi toàn bộ quy tắc trọng tâm của bài học theo cảm tính cá nhân. C. Kiểm thử là chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá chương trình là nhận xét tính đúng đắn, hiệu quả và dễ sử dụng. D. Bỏ qua việc rèn luyện qua ví dụ minh họa và bài tập thực hành của tiết học.
Câu 4. Để nắm vững và vận dụng tốt bài Bài 23: Kiểm thử và đánh giá chương trình, học sinh cần lưu ý điều nào sau đây? A. Không cần ghi nhớ các lưu ý trọng tâm vì chúng không ảnh hưởng đến việc làm bài tập. B. Áp dụng ngược lại hoàn toàn so với quy tắc và hướng dẫn trong phần kiến thức trọng tâm. C. Chỉ cần đọc lướt tiêu đề bài học mà không cần nắm vững nội dung chi tiết từng mục. D. Ba loại lỗi thường gặp: lỗi cú pháp khi vi phạm quy tắc ngôn ngữ, ví dụ thiếu dấu hai chấm, được trình biên dịch phát hiện ngay; lỗi logic khi chương trình chạy được nhưng cho kết quả sai, ví dụ sai công thức, đây là lỗi khó phát hiện nhất; lỗi thời gian chạy khi chương trình đang chạy thì dừng đột ngột, ví dụ chia cho số không.
Phần 2: Bài tập Tự luận & Thực hành theo tiết học
Bài 1 (Cơ bản — Hệ thống hóa kiến thức trọng tâm). Dựa vào phần Kiến thức trọng tâm của bài Bài 23: Kiểm thử và đánh giá chương trình, em hãy trình bày các khái niệm, quy tắc hoặc nội dung cốt lõi của tiết học và nêu ý nghĩa của chúng.
Bài 2 (Thực hành — Phân tích & Giải mẫu theo ví dụ tiết học). Đọc kĩ tình huống/ví dụ trọng tâm của tiết học dưới đây, sau đó tự trình bày lại các bước thực hiện và nêu nhận xét rút ra:
Ví dụ: kiểm thử chương trình tính tổng từ
1đếnn.
Bài 3 (Vận dụng — Áp dụng quy tắc ghi nhớ vào bài tập). Vận dụng các điểm ghi nhớ trọng tâm của bài Bài 23: Kiểm thử và đánh giá chương trình để giải thích hoặc thực hiện yêu cầu thực hành mở rộng sau:
n = int(input()) tong = 0 for i in range(1, n + 1): tong += i print(tong)
**Bài 4 (Luyện tập học kì — Mức độ Cơ bản).**
Trong bảng `HocSinh(MaHS, HoTen, NgaySinh)`, trường nào nên làm khóa chính? Vì sao?
**Bài 5 (Luyện tập học kì — Mức độ Thông hiểu).**
Kể tên hai công việc của người quản trị cơ sở dữ liệu.
**Bài 6 (Luyện tập học kì — Mức độ Vận dụng & Nâng cao).**
Viết đoạn chương trình Python tính tổng các phần tử của mảng `[2, 5, 1, 4]`.
## Phần 3: Đáp án & Hướng dẫn giải chi tiết
### 1. Đáp án phần Trắc nghiệm
- **Bảng đáp án:** **1-A**, **2-B**, **3-C**, **4-D**.
- **Giải thích chi tiết:**
- **Câu 1 (A):** Khẳng định đúng theo mục *Ghi nhớ* của bài: *"Kiểm thử: chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá: nhận xét tính đúng đắn và hiệu quả."*
- **Câu 2 (B):** Khẳng định đúng theo nội dung cốt lõi của tiết học: *"Ba loại lỗi: lỗi cú pháp, lỗi logic, lỗi thời gian chạy."*
- **Câu 3 (C):** Khẳng định chuẩn xác theo phần *Kiến thức trọng tâm*: *"Kiểm thử là chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá chương trình là nhận xét tính đúng đắn, hiệu quả và dễ sử dụng."*
- **Câu 4 (D):** Khẳng định đúng theo hướng dẫn trọng tâm của bài: *"Ba loại lỗi thường gặp: lỗi cú pháp khi vi phạm quy tắc ngôn ngữ, ví dụ thiếu dấu hai chấm, được trình biên dịch phát hiện ngay; lỗi logic khi chương trình chạy được nhưng cho kết quả sai, ví dụ sai công thức, đây là lỗi khó phát hiện nhất; lỗi thời gian chạy khi chương trình đang chạy thì dừng đột ngột, ví dụ chia cho số không."*
### 2. Hướng dẫn giải phần Tự luận & Thực hành
- **Bài 1:**
- **Nội dung cốt lõi cần trình bày:** Kiểm thử là chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá chương trình là nhận xét tính đúng đắn, hiệu quả và dễ sử dụng. Đây là bước không thể thiếu, vì chương trình dù cẩn thận cũng có thể chứa lỗi; phát hiện lỗi càng sớm, chi phí sửa càng thấp.
- **Tổng kết ghi nhớ:** Kiểm thử: chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá: nhận xét tính đúng đắn và hiệu quả.; Ba loại lỗi: lỗi cú pháp, lỗi logic, lỗi thời gian chạy.; Test case cần bao phủ dữ liệu bình thường, biên, đặc biệt và không hợp lệ.
- **Bài 2:**
- **Hướng dẫn phân tích & trình bày:** Dựa trực tiếp vào dữ kiện trong ví dụ minh họa của tiết học: *Ví dụ: kiểm thử chương trình tính tổng từ `1` đến `n`.*
- **Lưu ý khi trình bày:** Xác định rõ yêu cầu, áp dụng đúng quy tắc/khái niệm trong mục 1 và kiểm tra lại kết quả cuối cùng.
- **Bài 3:**
- **Phương pháp giải:** Áp dụng các quy tắc ghi nhớ của bài **Bài 23: Kiểm thử và đánh giá chương trình** (Kiểm thử: chạy chương trình với dữ liệu mẫu để phát hiện lỗi; đánh giá: nhận xét tính đúng đắn và hiệu quả.; Ba loại lỗi: lỗi cú pháp, lỗi logic, lỗi thời gian chạy.; Test case cần bao phủ dữ liệu bình thường, biên, đặc biệt và không hợp lệ.).
- **Lời giải mẫu/Nhận xét:** ```python
n = int(input())
tong = 0
for i in range(1, n + 1):
tong += i
print(tong)
- Bài 4:
MaHSlàm khóa chính vì mỗi học sinh có mã riêng, không trùng lặp; họ tên có thể trùng, ngày sinh có thể trùng. - Bài 5: Ví dụ: sao lưu dữ liệu; phân quyền truy cập; khôi phục dữ liệu; đảm bảo an toàn, bảo mật.
- Bài 6:
python a = [2, 5, 1, 4] print(sum(a)) # 12
