Bài 15. Gỡ lỗi SBT

Bài Gỡ lỗi SBT trang 68 Tin Học lớp 8 – Kết Nối Tri Thức Với Cuộc Sống, 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.

Câu 15.1

Bạn An viết chương trình như Hình 15.1 để điều khiển nhân vật đi theo các cạnh một hình vuông nhưng chương trình không hoạt động. Em hãy gỡ lỗi giúp bạn An.

Hình 15.1

Đáp án:

Vì chương trình chạy nhanh, vị trí cuối cùng của nhân vật giống vị trí ban đầu nên người dùng không nhận ra chương trình đã chạy xong (Hình 15.9).

Bổ sung khối lệnh “đợi…” để quan sát được di chuyển của nhân vật.

Có thể sử dụng khối lệnh lặp (4 lần) để chương trình ngắn gọn hơn.

Hình 15.9. Lời giải bài 15.1

Câu 15.2

Em hãy gỡ lỗi chương trình trong Hình 15.2 để nhân vật di chuyển qua lại trên màn hình nhưng luôn đứng thẳng, không bị quay đầu xuống phía dưới.

Hình 15.2

Đáp án:

Đặt kiểu xoay của nhân vật thành trái – phải và thay đổi lệnh xoay từ 90 độ thành 180 độ (Hình 15.10).

Hình 15.10. Lời giải bài 15.2

Câu 15.3

Bạn Minh viết chương trình như trong Hình 15.3 để điều khiển nhân vật nhảy theo điệu nhạc nhưng nhân vật chỉ nhảy sau khi nhạc kết thúc. Em hãy gỡ lỗi giúp bạn Minh.

Hình 15.3

Đáp án:

Thay lệnh “phát âm thanh… đến hết” bằng lệnh “bắt đầu âm thanh…”.

Có thể thay đổi số bước lặp để thời gian nhân vật nhảy phù hợp với thời gian của bản nhạc (Hình 15.11).

Hình 15.11. Lời giải bài 15.3

Câu 15.4

Nhân vật trong chương trình ở Hình 15.4 có ba trang phục Costume1, Costume2 và Costume3. Khoa muốn nhân vật bắt đầu đội mũ, sau đó chạy tại chỗ. Tuy nhiên, chương trình chỉ thực hiện đúng trong lần chạy đầu tiên. Từ lần thứ hai trở đi nó không thực hiện đúng kịch bản, chỉ chạy tại chỗ mà hông đội mũ. Em hãy gỡ lỗi giúp bạn Khoa.

Đáp án:

Khi bắt đầu chạy chương trình, nhân vật mang trang phục Costume1, đó là hình nhân vật đội mũ. Chương trình kết thúc khi nhân vật mang trang phục Costume3. Từ lần thứ hai trở đi, khi nháy chuột vào lá cờ màu xanh, nó xuất hiện từ trạng thái hiện hành (Costume3) nên không thấy nhân vật đội mũ.

Để sửa chương trình, cần bổ sung lệnh chuyển trang phục về Costume1 trước khi vào vòng lặp (Hình 15.12).

Hình 15.12

Câu 15.5

Trong chương trình ở Hình 15.5, nhân vật cần thực hiện một điệu nhảy trong khi nhịp trống vang lên. Tuy nhiên, nhân vật đã không nhảy mà đứng yên. Em hãy gỡ lỗi chương trình để nó thực hiện đúng kịch bản nhé.

Hình 15.5. Nhân vật nhảy theo tiếng trống

Đáp án:

Chương trình có sử dụng nhóm lệnh âm nhạc. Vì việc đổi trang phục nằm ngoài vòng lặp nên nhân vật đứng yên. Chỉ cần đưa lệnh chuyển “trang phục phục kế tiếp” vào trong vòng lặp là chú mèo sẽ thực hiện điệu nhảy. Bỏ lệnh “đợi…” để nhân vật nhảy đúng nhịp trống mà không bị trễ (Hình 15.13).

Hình 15.13

Câu 15.6

Chương trình được cho trong Hình 15.6 điều khiển nhân vật hiển thị lần lượt kết quả của phép nhân một số được đưa vào từ bàn phím với các số từ 2 đến 10, nhưng nó chỉ hiện ra một giá trị duy nhất. Em hãy gỡ lỗi để chương trình chạy đúng yêu cầu nhé.

Hình 15.6

Đáp án:

Bảng nhân với một số cần được hiển thị 9 lần, mỗi lần với một số nhân khác nhau. Chẳng hạn, bảng chọn với số 3 sẽ bao gồm: 3 x 2 = 6, 3 x 3 = 9;… ; 3 x 10 = 30 (Hình 15.14).

Hình 15.14

Câu 15.7

Chương trình ở Hình 15.7 được lập để điều khiển nhân vật chạy khắp màn hình bằng cách sử dụng các phím mũi tên. Tuy nhiên, nó đã không hoạt động. Em hãy gỡ lỗi để chương trình hoạt động đúng kịch bản nhé.

Hình 15.7. Di chuyển theo phím mũi tên

Đáp án: Cần đưa khối lệnh đã cho trong đề bài vào một cấu trúc lặp vô hạn.

Câu 15.8

Thực hành: Chương trình được cho trong Hình 15.8 vẽ một đường tròn. Hãy sửa chương trình sao cho tốc độ vẽ tăng lên nhưng đường đi của nhân vật vẫn vẽ thành đúng đường tròn ban đầu.

Hình 15.8. Vẽ đường tròn

Đáp án:

Đường tròn được vẽ dưới dạng đường gấp khúc có nhiều đoạn. Số đoạn càng nhiều, đường sẽ càng tròn. Trong chương trình, số đoạn được thể hiện ở số bước của vòng lặp.

Để tốc độ vẽ tăng lên, số bước của vòng lặp phải giảm đi. Tuy nhiên, nếu số bước của vòng lặp nhỏ thì đường tròn sẽ chỉ còn là đường gấp khúc.

Chú ý rằng, giá trị của bước nhảy và góc quay trong mối bước lặp cũng phải thay đổi phù hợp để đường nhận được giống đường tròn ban đầu. Cụ thể là, nếu số bước của vòng lặp là n thì bước nhảy và góc quay lần lượt là 500 : n và 360 : n.

Câu 15.9

Thực hành: Em hãy truy cập liên kết sau đây và chạy chương trình:

https://scratch.mit.edu/projects/791548660/

Em sẽ thấy sau khi các miếng pizza bị ăn hết, chiếc bánh xuất hiện trở lại nhưng khuyết một miếng. Hãy sửa chương trình để chiếc pizza này không còn gì sau khi tất cả các miếng bánh đã bị ăn.

Hướng dẫn:

Nguyên nhân của việc chiếc bánh pizza vẫn hiện ra sau khi các miếng bánh đã lần lượt bị ăn hết là số bước lặp vượt quá trạng thái bị ăn hết. Vì vậy, cách sửa là giảm số bước của vòng lặp, chỉ để lại 6 bước.

Câu 15.10

Thực hành: Em hãy truy cập liên kết sau đây và chạy chương trình:

https://scratch.mit.edu/projects/791527048/

Trong chương trình trò chơi đỡ bóng, khi quả bóng chạm vào thanh đỡ, nó cần được nảy lên theo hướng đối xứng với hướng nó đi tới (phản xạ). Tuy nhiên, quả bóng trong chương trình nảy không đúng hướng được yêu cầu.

Em hãy sửa chương trình để quả bóng nảy đúng hướng nhé.

Hướng dẫn:

Thay câu lệnh “xoay…” trong kịch bản của quả bóng thành câu lệnh “đặt hướng bằng…” như trong Hình 15.5.

Câu 15.11

Thực hành: Em hãy truy cập liên kết sau đây và chạy chương trình:

https://scratch.mit.edu/projects/791531006/

Trong chương trình xe dò đường, chiếc xe đi đúng đường khi ở tốc độ thấp (chẳng hạn, khi speed từ 3 trở xuống). Tuy nhiên, khi tốc độ tăng cao (chẳng hạn speed từ 6 trở lên), xe bị văng ra khỏi con đường. Em hãy sửa chương trình sao cho xe đi đúng đường ngay cả khi tốc độ tăng cao.

Hướng dẫn:

Xe cần phải kiểm tra nhiều lần xem đi có đúng đường hay không và điều chỉnh cho đúng hướng rồi mới dịch chuyển. Tuy nhiên, trong chương trình, xe đã dịch chuyển ngay khi mới kiểm tra một lần. Vì vậy, xe đã đi ra khỏi con đường dành cho nó. Cách sửa chương trình là thay khối lệnh điều khiển rẽ nhánh thành khối lệnh lặp có điều kiện.

Câu 15.12

Thực hành: Em hãy truy cập liên kết sau đây và chạy chương trình:

https://scratch.mit.edu/projects/791750447/

Chương trình là một trò chơi điều khiển. Một miếng pho mát được giấu đằng sau những bức tường và chú chuột cần phải đi vòng qua những bức tường đó để tìm miếng pho mát. Người sử dụng nhấn các phím mũi tên để điều khiển chú chuột. Tuy nhiên, chương trình đã hoạt động không đúng kịch bản. Em hãy chạy thử xem điều gì xảy ra và sửa các lối của chương trình.

Hướng dẫn:

Khi chạy thử, em sẽ nhận ra rằng chú chuột có thể đi xuyên qua các bức tường. Đó là tình huống không đúng kịch bản.

Để chú chuột không đi xuyên qua được bức tường, ta sẽ dịch chuyển bằng cách thay đổi tung độ và hoành độ của chú chuột như được gợi ý trong Hình 15.16 (ứng với phím mũi tên xuống) thay vì sử dụng lệnh dịch chuyển thông thường. Em hãy áp dụng cách này với các phím khác.

Xem các bài giải khác tại Giải Bài tập SBT Tin Học Lớp 8 Kết Nối Tri Thức

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