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

Gỡ lỗi chương trình SBT 8 trang 78 Tin Học lớp 8 – Chân Trời Sáng Tạo, mời các em tham khảo cùng Bumbii.

Chủ đề 5. Giải quyết vấn đề với sự trợ giúp của máy tính. Bài 15. Gỡ lỗi chương trình.

Bài tập

Câu 1

Điền các cụm từ: cú pháp; lỗi cú pháp: phát hiện lỗi; lỗi lôgic; kiểm thử; kết quả sai vào chỗ chấm cho phù hợp.

a) ………………… là một công đoạn quan trọng trong quy trình sản xuất phần mềm. ………………… trong chương trình là một trong những mục đích của việc kiểm thử.

b) ………………… là lỗi do viết chương trình, câu lệnh sai……………….. dẫn đến chương trình không hoạt động.

c) ………………… là lỗi xảy ra trong trường hợp chương trình hoạt động nhưng đưa ra …………………

Đáp án:

a) Kiểm thử; Phát hiện lỗi.

b) Lỗi cú pháp; cú pháp.

c) Lỗi lôgic; kết quả sai.

Câu 2

Hãy xác định loại lỗi, nguyên nhân gây lỗi trong mỗi chương trình dưới đây.

1) 2) 3)
– Loại lỗi:
Lỗi cú pháp: …
Lỗi lôgic: …
– Nguyên nhân gây lỗi: ……………………….
……………………….
……………………….
………………………. ……………………….
– Loại lỗi:
Lỗi cú pháp: …
Lỗi lôgic: …
– Nguyên nhân gây lỗi: ……………………….
……………………….
……………………….
……………………….
……………………….
– Loại lỗi:
Lỗi cú pháp: …
Lỗi lôgic: …
– Nguyên nhân gây lỗi:
……………………….
……………………….
……………………….
……………………….
……………………….

Đáp án:

– Loại lỗi: Lỗi cú pháp.
– Nguyên nhân gây lỗi:
Do biểu thức a =, b = không phải là câu lệnh nên không có khớp nối để lắp ghép được với các câu lệnh đứng trước và sau nó.
– Loại lỗi: Lỗi lôgic.
– Nguyên nhân gây lỗi:
Do chương trình chưa xét trường hợp a = b nên khi nhập bộ dữ liệu thử của trường hợp này thì chương trình thông báo kết quả sai.
– Loại lỗi: Lỗi lôgic.
– Nguyên nhân gây lỗi: Do chương trình chưa xét các trường hợp (a = 0, b = 0 hoặc a = 0, b ≠ 0).

Câu 3

Em hãy đề xuất bộ dữ liệu thử để kiểm thử chương trình ở Hình 1 và giải thích lí do em đề xuất bộ dữ liệu thử như vậy.

Hình 1. Chương trình Scratch tính nghiệm số của phương trình ax + b = 0

Đáp án:

Các bộ dữ liệu đáp ứng yêu cầu kiểm thử cần đảm bảo: (a ≠ 0, b bất kì); (a = 0, b ≠ 0); (a = 0, b = 0).

Lí do: đó là bộ dữ liệu để kiểm thử các trường hợp thực tế xảy ra khi giải phương trình bậc nhất ax + b = 0.

Câu 4

Những phát biểu nào sau đây là đúng về lỗi trong chương trình ở Hình 1?

A. Lỗi trong chương trình là lỗi cú pháp.

B. Lỗi trong chương trình là lỗi lôgic.

C.  là câu lệnh trực tiếp tạo ra lỗi của chương trình.

D.  là câu lệnh liên quan đến lỗi.

Đáp án:

B, C, D là các đáp án đúng khi nói về lỗi của chương trình ở cột A.

Câu 5

Phát biểu nào dưới đây là sai?

A. Chạy thử để kiểm tra hoạt động của chương trình được gọi là kiểm thử. Mục đích của kiểm thử là phát hiện lỗi trong chương trình.

B. Bộ dữ liệu thử được dùng để phát hiện lỗi trong chương trình nhằm kiểm tra các tình huống xảy ra khi đưa chương trình vào sử dụng.

C. Có hai loại lỗi chương trình là lỗi cú pháp và lỗi lôgic. Việc tìm lỗi cú pháp thường được thực hiện dễ dàng nhờ vào các công cụ hỗ trợ lập trình, còn việc tìm lỗi lôgic không phải lúc nào cũng dễ dàng thực hiện được.

D. Lỗi lôgic 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.

Đáp án: Phương án D.

Câu 6

Chọn các đáp án đúng khi lắp ghé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 trúc điều khiển ở cột bên trái để tạo thành chương trình thông báo đúng kết quả so sánh giá trị 2 số a và b.

Cấu trúc điều khiểnCâu lệnh, khối lệnh
a)
b)
c)
d)
e)
g)

A. 1 – e; 2 – g; 3 – c; 4 – a; 5 – d.

B. 1 – c; 2 – a; 3 – b; 4 – d; 5 – g.

C. 1 – b; 2 – d; 3 – e; 4 – g; 5 – d.

D. 1 – c; 2 – a; 3 – e; 4 – g; 5 – d.

Đáp án: Cả 4 phương án A, B, C, D đều đúng.

Câu 7

Chọn các đáp án đúng khi lắp ghép các lệnh, khối lệnh ở cột bên phải vào vị trí thích hợp trong cấu trúc điều khiển ở cột bên trái để tạo thành chương trình tính đúng nghiệm của phương trình ax +b=0.

Cấu trúc điều khiểnCâu lệnh, khối lệnh
a)
b)
c)
d)
e)
g)

A. 1 – d; 2 – a; 3 – b; 4 – c; 5 – e.

B. 1 – d; 2 – a; 3 – b; 4 – e; 5 – c.

C. 1 – b; 2 – e; 3 – d; 4 – a; 5 – c.

D. 1 – b; 2 – e; 3 – d; 4 – c; 5 – a.

Đáp án: B, C là các phương án đúng.

Câu 8

Hoa và Lan cùng tạo một chương trình với mục đích tính và thông báo tổng của 10 số được nhập từ bàn phím dưới đây. Theo em chương trình của bạn nào đúng, chương trình của bạn nào có lỗi, đó là lỗi gì? Vì sao?

Chương trình của bạn HoaChương trình của bạn Lan

Đáp án:

– Chương trình của bạn Lan đúng.

– Chương trình của bạn Hoa có lỗi lôgic (chương trình hoạt động nhưng cho kết quả sai). Nguyên nhân do câu lệnh  trong chương trình đặt sai vị trí, dẫn đến tổng S sai (chỉ là giá trị của số cuối cùng được nhập từ bàn phím).

Thực hành

Câu 9

Tạo chương trình cho phép so sánh hai số a, b được nhập từ bàn phím và thông báo kết quả ra màn hình.

Hướng dẫn:

Chương trình gợi ý:

Câu 10

Tạo chương trình tính đúng nghiệm của phương trình ax +b = 0 với a, b là 2 số nguyên nhập từ bàn phím.

Hướng dẫn:

Chương trình gợi ý:

Xem các bài giải khác tại Giải sách bài tập tin học lớp 8 – Chân Trời Sáng Tạo

Thông tin liên hệ & mạng xã hội:
Website: https://bumbii.com/
Facebook: https://www.facebook.com/bumbiiapp
Pinterest: https://www.pinterest.com/bumbiitech

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest

0 Bình luận
Phản hồi nội tuyến
Xem tất cả bình luận
0
Cùng chia sẻ bình luận của bạn nào!x