Bài 15: Gỡ lỗi chương trình

ML
Hướng dẫn giải Thảo luận (1)

- Học sinh tự tạo chương trình theo Hình 2.

- Chương trình đưa ra kết quả sai khi giá trị a, b bằng nhau.

- Gỡ lỗi: Thay đổi đoạn chương trình so sánh hai số a, b với 3 trường hợp như sau

loading...

Trả lời bởi datcoder
ML
Hướng dẫn giải Thảo luận (1)

a) Học sinh tự thực hiện tạo chương trình như Hình 4.

b) Chạy thử với bộ dữ liệu thử: a = 0, b = 2 và a = 0, b = 0.

c) Gỡ lỗi:

loading...

Trả lời bởi datcoder
ML
Hướng dẫn giải Thảo luận (1)

Lỗi cú pháp là lỗi do viết chương trình, câu lệnh sai cú pháp dẫn đến chương trình không hoạt động. Hầu hết các ngôn ngữ lập trình đều có công cụ hỗ trợ hạn chế, phát hiện lỗi cú pháp.

Lỗi logic là lỗi xảy ra trong trường hợp chương trình hoạt động nhưng đưa ra kết quả sai. Sử dụng bộ dữ liệu thử là cách thường được sử dụng để phát hiện lỗi logic trong chương trình.

Trả lời bởi Quoc Tran Anh Le
ML
Hướng dẫn giải Thảo luận (1)

Theo em khi thực hiện chương trình này không ra kết quả như mong muốn vì khi khởi tạo giá trị ban đầu cho biến S là 0 trong điều kiện lặp khiến cho giá trị của S trở lại thành 0 sau mỗi lần lặp. Điều này dẫn đến kết quả sai.

Trả lời bởi datcoder
ML
Hướng dẫn giải Thảo luận (1)

Sắp xếp theo trình tự, lần lượt sẽ là : A-C-B-E-D.

Trả lời bởi animepham
ML
Hướng dẫn giải Thảo luận (1)

1 - b, 2 - a, 3 - d, 4 - e, 5 - c.

Trả lời bởi GV Nguyễn Trần Thành Đạt
ML
Hướng dẫn giải Thảo luận (1)

Tham khảo!

 Bộ dữ liệu thử: a = 0, b bất kì.

- Theo em lỗi ở chương trình 4 thuộc loại lỗi logic.

Trả lời bởi Thanh An
ML
Hướng dẫn giải Thảo luận (1)

Chương trình 1 có lỗi cú pháp, câu lệnh 2, 3 không khớp nối với câu lệnh 1, 4.

Chương trình 2 có lỗi logic, a = b thuộc trường hợp a > b sai nên chương trình đưa ra thông báo sai khi nhập hai số a, b bằng nhau.

Trả lời bởi datcoder
ML
Hướng dẫn giải Thảo luận (1)

Tham khảo!

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à: Media VietJack

Câu lệnh liên quan đến lỗi là: Media VietJack

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ả lời bởi Thanh An
ML
Hướng dẫn giải Thảo luận (1)