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ì?

  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?  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?  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?

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.
Bình luận (3)

Khánh Chi

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.

Trả lời.

thư vũ

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.

Trả lời.

Hải Nguyễn

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.

Trả lời.
Nhấn vào đây để đánh giá
Thông tin người gửi
0.04861 sec| 2184.43 kb