Tải bài giảng điện tử powerpoint Khoa học máy tính 11 KNTT tri thức Bài 23: Kiểm thử và đánh giá chương trình. Bài học được thiết kể đẹp mắt, nội dung giảng dạy hay nhiều trò chơi và video phong phú thu hút học sinh tập trung nắm bắt kiến thức quan trong. Tải Tải giáo án Powerpoint Powerpoint tải về chỉnh sửa được. Kéo xuống để xem chi tiết
Rõ nét về file powerpoint trình chiếu. => Xem thêm
CHÀO MỪNG CẢ LỚP ĐẾN VỚI BÀI HỌC HÔM NAY!
KHỞI ĐỘNG
Làm thế nào để biết trong các thuật toán giải cùng một bài toán thì thuật toán nào là tốt nhất?
Có những tiêu chí nào để đánh giá tính "tối ưu" của một thuật toán?
BÀI 23: KIỂM THỬ VÀ ĐÁNH GIÁ CHƯƠNG TRÌNH
NỘI DUNG BÀI HỌC
Vai trò của kiểm thử chương trình
Kiểm tra tính đúng của chương trình
Đánh giá hiệu quả chương trình
01 VAI TRÒ CỦA KIỂM THỬ CHƯƠNG TRÌNH
Hoạt động 1:
Ở lớp 10, em đã học một số phương pháp kiểm thử chương trình. Hãy thảo luận với các bạn về các phương pháp kiểm thử sau, nêu ý nghĩa của chúng trong việc đánh giá độ tin cậy và chứng minh tính đúng của chương trình:
Nêu ý nghĩa của kiểm thử chương trình?
Kiểm thử sẽ giúp tăng độ tin cậy của chương trình nhưng chưa chứng minh được tính đúng của thuật toán và chương trình.
Lưu ý
Một thuật toán đúng chỉ có thể được chứng minh là đúng bằng các công cụ toán học (và khoa học máy tính), còn kiểm thử bằng các bộ test sẽ không được coi là phương pháp chứng minh tính đúng của thuật toán, mà chỉ là biện pháp làm tăng độ tin cậy của chương trình.
Câu hỏi củng cố kiến thức (SGK - tr.107)
Câu 1: Giả sử em thiết lập chương trình giải bài toán nào đó. Em đã kiểm thử với 10 bộ dữ liệu và tất cả các kết quả đều đúng. Khi đó có thể kết luận chương trình đó đúng hay chưa?
Chưa thể kết luận
Câu 2: Giả sử một chương trình kiểm thử với 10 bộ dữ liệu cho kết quả 9 lần, 1 lần sai. Chương trình đó là sai hay đúng?
Có thể kết luận ngay chương trình đó là sai.
02 KIỂM TRA TÍNH ĐÚNG CỦA CHƯƠNG TRÌNH
Hoạt động 2:
Quan sát chương trình mô tả thuật toán sắp xếp chèn. Hãy thảo luận và đưa ra các lập luận để kiểm tra tính đúng của thuật toán sắp xếp chèn.
1 def InsertionSort(A,n):
2 for i in range(1,n):
3 value = A[i]
4 k = i – 1
5 #di chuyển các phần tử A[k] > value qua phải
6 while k >= 0 and A[k] > value
7 A[k+1] = A[k]
8 k = k – 1
9 A[k+1] = value
Chia lớp thành 6 nhóm, thực hiện các nhiệm vụ sau:
GHI NHỚ
Tính đúng của thuật toán cần được chứng minh bằng lập luận toán học. Sử dụng các bộ dữ liệu kiểm thử có thể làm tăng độ tin cậy của chương trình nhưng chưa chứng minh được tính đúng của thuật toán.
Câu hỏi củng cố kiến thức (SGK - tr.108)
Câu 1: Chương trình sau giải bài toán: Yêu cầu nhập số tự nhiên n và tính tổng 1 + 2 +…+ n.
1 n = int(input("Nhập số tự nhiên n: "))
2 S = 0
3 for i in range(n+1):
4 S = S + i
5 print(S)
Chương trình trên có đúng không?
Chương trình đúng
Câu 2: Chương trình sau giải bài toán đếm số các ước số thực sự của số tự nhiên n.
1 def dem(n):
2 count = 0
3 k = 2
4 while k < n:
5 if n%k ==0:
6 count = count + 1
7 k = k + 1
8 return count
Chương trình trên đúng hay sai?
Chương trình sai vì chưa tính số 1
03 ĐÁNH GIÁ HIỆU QUẢ CHƯƠNG TRÌNH
Hoạt động 3:
Thảo luận về các tiêu chí đánh giá tính hiệu quả của thuật toán hay chương trình giải một bài toán:
Hiệu quả hay tính tối ưu của chương trình được xem xét trên cơ sở nào?
Tính hiệu quả của chương trình/ thuật toán được xem xét trên cơ sở đánh giá độ phức tạp tính toán.
Hai loại độ phức tạp tính toán phổ biến nhất đó là:
Độ phức tạp thời gian: được xác định là thời gian thực hiện chương trình/thuật toán.
Độ phức tạp không gian: được xác định là tài nguyên của máy tính trong đó có phần bộ nhớ được sử dụng để thực hiện chương trình.
Ngoài ra để đánh giá hiệu quả chương trình, đôi khi còn cần quan tâm tới các tiêu chí như tính dễ hiểu, rõ ràng, ngắn gọn, dễ bảo trì, dễ cài đặt,…của chương trình.
Chú ý
Thời gian chạy và không gian tính toán của thuật toán được kí hiệu là T(n) và S(n), trong đó n là kích thước đầu vào của bài toán. Nếu đầu vào là 1 dãy thì n là độ dài dãy đã cho.
GHI NHỚ
.....
=> Còn nữa.... Files tải về, sẽ có đầy đủ nội dung bài học
Nâng cấp lên tài khoản VIP để tải tài liệu và dùng thêm được nhiều tiện ích khác
Bài giảng điện tử Khoa học máy tính 11 KNTT, Tải giáo án Powerpoint Khoa học máy tính 11 KNTT Bài 23: Kiểm thử và đánh giá chương, Tải giáo án Powerpoint Khoa học máy tính 11 KNTT tri thức Bài 23: Kiểm thử và đánh giá chương