2. Gỡ lỗiCâu hỏi 1:Hình 6 là kết quả kiểm thử chương trình ở Hình 4. Em hãy quan sát Hình 6...
Câu hỏi:
2. Gỡ lỗi
Câu hỏi 1: Hình 6 là kết quả kiểm thử chương trình ở Hình 4. Em hãy quan sát Hình 6 và cho biết:
a) Lỗi được phát hiện khi thực hiện chương trình với những bộ dữ liệu nào?
b) Câu lệnh nào trực tiếp tạo ra lỗi? Câu lệnh nào liên quan đến lỗi?
c) Nguyên nhân gây ra lỗi này là gì?
Hình 6. Kết quả kiểm thử chương trình ở Hình 4
Câu trả lời:
Người trả lời: GV. Đỗ Hồng Giang
Để giải câu hỏi trên, ta cần phân tích kết quả kiểm thử ở Hình 6 và so sánh với chương trình ở Hình 4 để tìm ra lỗi và nguyên nhân gây lỗi.Câu trả lời cho câu hỏi trên có thể được viết như sau:a) Lỗi được phát hiện khi thực hiện chương trình với bộ dữ liệu Hình 6b: a = 0, b = 2 và Hình 6c: a = 0, b = 0.b) Câu lệnh trực tiếp tạo ra lỗi là cau_lenh_chia = a / b; Câu lệnh liên quan đến lỗi là khai_bao_biến b với giá trị b = 0.c) Nguyên nhân gây ra lỗi này là: lỗi logic vì phép chia cho 0 là không xác định. Để tránh lỗi này, cần kiểm tra giá trị của biến b trước khi thực hiện phép chia.
Câu hỏi liên quan:
- KHỞI ĐỘNGĐể so sánh hai số a, b được nhập từ bàn phím, một bạn đã tạo chương trình ở Hình 1. Khi...
- KHÁM PHÁ1. Phát hiện và phân loại lỗiCâu hỏi:Tìm hiểu và đề xuất bộ dữ liệu thử để phát hiện...
- Câu hỏi 2:Em hãy lắp các câu lệnh, khối lệnh ở cột bên phải vào vị trí thích hợp trong cấu...
- LUYỆN TẬPCâu hỏi 1:Thế nào là lỗi cú pháp, lỗi logic?
- Câu hỏi 2:Hãy sắp xếp các việc dưới đây theo trình tự để phát hiện, gỡ lỗi chương trình.A....
- Câu hỏi 3:Những phát biểu nào sau đây là sai khi nói về việc xác định vị trí, nguyên nhân gây...
- Câu hỏi 4:Hình 7 là chương trình một bạn đã tạo với mục đích tính và thông báo tổng của 10 số...
- THỰC HÀNHCâu hỏi 1:Tạo chương trình ở Hình 2, thực hiện kiểm thử, gỡ lỗi để chương trình đưa...
- Câu hỏi 2:Thực hành theo các yêu cầu sau:a) Tạo chương trình ở Hình 4.b) Chạy thử chương...
- Câu hỏi 3:Tạo chương trình ở Hình 7. Thực hiện kiểm thử, gỡ lỗi để chương trình đưa ra đúng...
- VẬN DỤNGEm hãy thực hành kiểm thử, gỡ lỗi cho các chương trình em đã tạo ở các Bài 12, 13, 14. Trao...
c) Nguyên nhân gây ra lỗi là do chương trình không xử lý trường hợp giá trị âm cho biến x một cách đúng đắn, dẫn đến việc in ra kết quả không chính xác.
b) Câu lệnh trực tiếp tạo ra lỗi là 'if (x < 0)'. Câu lệnh 'System.out.println(x)' liên quan đến lỗi vì nó in ra giá trị của x khi x là số âm.
a) Lỗi được phát hiện khi thực hiện chương trình với bộ dữ liệu có giá trị âm cho biến x.