SBT Tin học 8 (Cánh diều) Bài 6: Thực hành tìm và sửa lỗi

251

Toptailieu.vn biên soạn và giới thiệu lời giải SBT Tin học 8 (Cánh diều) Bài 6: Thực hành tìm và sửa lỗi hay, chi tiết sẽ giúp học sinh dễ dàng trả lời câu hỏi sách bài tập Tin học 8 Bài 6 từ đó học tốt môn Tin học 8.

SBT Tin học 8 (Cánh diều) Bài 6: Thực hành tìm và sửa lỗi

Câu F26 trang 59 SBT Tin học 8: Trong các câu dưới đây, những câu nào sai?

1) Chỉ có chương trình trong ngôn ngữ lập trình Scratch mới cần chạy thử để tìm lỗi, sửa lỗi

2) Chỉ cần chạy thử chương trình với một bộ dữ liệu là đủ để biết chương trình có lỗi hay không

3) Khi tách chương trình thành từng đoạn chương trình nhỏ, nếu mỗi đoạn nhỏ không có lỗi thì toàn bộ chương trình không có lỗi, bởi vậy chỉ cần chạy thử từng đoạn nhỏ đã tách ra để tìm lỗi
4) Quan sát kết quả của các biến trong quá trình chạy chương trình có thể giúp tìm ra lỗi của chương trình

Lời giải:

Những câu sai là 1, 2

Câu F27 trang 60 SBT Tin học 8: Trong các cách dưới đây, những cách nào có thể giúp tìm lỗi một chương trình Scratch?

1) Đọc lại chương trình để hiểu từng lệnh, từng đoạn lệnh nhằm thực hiện gì

2) Đổi tên các biến dùng trong chương trình

3) Chạy thử từng đoạn chương trình thực hiện một phần việc tương đối trọn vẹn, độc lập để tìm lỗi cho đoạn chương trình đó

4) Thêm một số câu lệnh Wait… để có thể quan sát được rõ hơn các kết quả trung gian trong quá trình thực hiện chương trình

Lời giải:

Những cách có thể giúp tìm lỗi là 1, 2, 4

Câu F28 trang 60 SBT Tin học 8: Chương trình ở Hình 1 được tạo ra để tính tổng các số nguyên chẵn trong phạm vi từ 1 đến 500. Em cho biết chương trình có lỗi hay không? Nếu có lỗi thì lỗi ở đâu và em hãy sửa lại cho đúng

Chương trình ở Hình 1 được tạo ra để tính tổng các số nguyên chẵn trong phạm vi từ 1 đến 500 (ảnh 1)

Lời giải:

Chương trình chạy thử cho kết quả tổng bằng 0, vậy chắc chắn chương trình có lỗi

Lỗi mỗi lần tăng 2 đơn vị: Nếu số trước là số chẵn thì tăng 2 đơn vị sẽ được số chẵn tiếp theo cần cộng vào. Tuy nhiên, khi khởi trị (gán giá trị đầu tiên) lại là số 1, do vậy cứ liên tục cộng thêm 2 thì không được số nào là số chẵn cả.

Có thể cải tiến thêm để chương trình chạy đúng mà ngắn gọn hơn: Số trước là số chẵn thì tăng 2 đơn vị sẽ được số chẵn tiếp theo cần cộng vào, như vậy không cần kiểm tra số cộng vào có là số chẵn hay không trước khi cộng thêm cho tổng.

Chương trình ở Hình 1 được tạo ra để tính tổng các số nguyên chẵn trong phạm vi từ 1 đến 500 (ảnh 2)

Câu F29 trang 60 SBT Tin học 8: Bạn Hoa muốn nhân vật Mèo Scratch ở chính giữa sân khấu, rồi dịch chuyển sang phía bên phải sân khấu và lớn lên. Tuy nhiên, chương trình chỉ thể hiện dúng như vậy khi chạy lần đầu tiên, đến khi Hoa nháy chuột vào lá cở xanh lần thứ hai, thì chương trình không chạy như mong muốn nữa? Em hãy thử tìm nguyên nhân và sửa lỗi cho bạn Hoa.

Bạn Hoa muốn nhân vật Mèo Scratch ở chính giữa sân khấu, rồi dịch chuyển sang phía bên phải sân khấu (ảnh 1)

Bạn Hoa muốn nhân vật Mèo Scratch ở chính giữa sân khấu, rồi dịch chuyển sang phía bên phải sân khấu (ảnh 2)

Lời giải:

Sau lần chạy thứ nhất, nhân vật Mèo ở vị trí bên phải sân khấu (150;0), do vậy khi chạy chương trình lần thứ hai thì nhân vật Mèo từ vị trí (150) chuyển về vị trí (40; 0), tức là không còn di chuyển theo chiều sang bên phải sân khấu như kịch bản quy định. Sửa lỗi này chỉ cần đặt lại vị trí cho nhân vật Mèo ở đầu chương trình. Cũng nên đặt kích thước cho nhân vật Mèo để tránh trường hợp qua nhiều lần chạy chương trình thì nhân vật Mèo ở kích thước quá lớn, chiếm hết màn hình.

Bạn Hoa muốn nhân vật Mèo Scratch ở chính giữa sân khấu, rồi dịch chuyển sang phía bên phải sân khấu (ảnh 3)

Câu F30 trang 61 SBT Tin học 8: Với việc tạo trò chơi Dino, qua các Bài F19, F20, F24, F25 em đã tạo các chương trình điều khiển:

- Khủng long chạy liên tục, khi người chơi nhấn phím space thì nhảy lên để tránh chạm vào catus

- ground1, ground2 chạy ngược chiều khủng long khi chạy đến giới hạn phía bên trái sân khấu thì xuất hiện phía bên phải sân khấu

- Catus chạy liên tục ngược chiều khủng long khi chạy đến giới hạn phía bên trái sân khấu thì xuất hiện phía bên phải sân khâu. Khi catus chạm khủng long thì nhắn tin cho đối tượng GameOver để đối tượng này xuất hiện và trò chơi dừng lại

Hãy kiểm tra lại công việc theo sơ đồ ở Bài F19, hoàn thiện chương trình, tìm lỗi và sửa lỗi (nếu có) để được trò chơi như mô tả.

Lời giải:

Tuỳ theo chương tình học sinh tạo ra, đã có chương trình đáp án cho từng nhân vật ở các Bài F19, F20, F24, F25. Học sinh có thể tạo thêm chương trình cho nhân vật cloud1 và cloud2 (tương tự ground1 và ground2) hoặc không, có thể thêm phần tính điểm (thời gian khủng long chạy) hoặc không

Với việc tạo trò chơi Dino, qua các Bài F19, F20, F24, F25 em đã tạo các chương trình điều khiển (ảnh 1)

Với việc tạo trò chơi Dino, qua các Bài F19, F20, F24, F25 em đã tạo các chương trình điều khiển (ảnh 2)

Trong chương trình điều khiển khủng long, có thể thêm phần tính điểm (thời gian chạy của khủng long) như hình bên.

Xem thêm các bài giải sách bài tập Tin học 8 Cánh diều hay, chi tiết khác:

Bài 5: Thể hiện cấu trúc lặp trong chương trình

Bài 7: Thực hành tổng hợp trang 61

Bài 1: Tin học và ứng dụng

Bài 2: Tin học và các ngành nghề

Bài 1: Vài nét lịch sử phát triển máy tính

Đánh giá

0

0 đánh giá