Giải SGK Tin 9 KNTT Bài 14. Giải quyết vấn đề có đáp án
5 câu hỏi
Tìm đường thoát khỏi mê cung.
Mê cung được dùng để chỉ những công trình gồm nhiều hành lang, lối đi, được tạo thành từ những bức tường. Một robot xuất phát từ Lối vào, tìm đường tới Lối ra như Hình 14.1. Em hãy quan sát cách di chuyển của robot và trả lời các câu hỏi sau:
Robot di chuyển trong mê cung theo cách nào?
Robot di chuyển trong mê cung sao cho bức tường luôn ở bên phải nó.
Mê cung được dùng để chỉ những công trình gồm nhiều hành lang, lối đi, được tạo thành từ những bức tường. Một robot xuất phát từ Lối vào, tìm đường tới Lối ra như Hình 14.1. Em hãy quan sát cách di chuyển của robot và trả lời các câu hỏi sau:
Tại sao cách di chuyển đó dẫn robot tới lối ra
Bằng cách di chuyển như vậy, robot sẽ được bức tường dẫn qua mọi vị trí mê cung cho đến khi tìm thấy Lối ra.
Thuật toán bám tường
Thuật toán bám tường là một trong những giải pháp thoát khỏi mê cung. Trong thuật toán, robot di chuyển sao cho bức tường luôn ở một phía của nó (chẳng hạn phía bên phải). Em hãy mô tả thuật toán xác định hướng di chuyển của robot. Biết rằng robot chỉ thực hiện được những động tác sau:
1. Phát hiện xung quanh (trái, phải, phía trước) có tường hay không.
2. Quay trái hoặc quay phải một góc 90 độ.
3. Tiến (đi thẳng) một bước về phía trước.
Thuật toán xác định hướng di chuyển của Robot:
Lặp lại động tác sau cho đến khi tìm thấy lối ra:
nếu bên phải không có tường thì
quay phải 90 độ
tiến một bước
nếu không thì
nếu phía trước không có tường thì
tiến một bước
nếu không thì
quay trái 90 độ.
Em hãy mô tả thuật toán bám tường bên trái để tìm đường thoát khỏi mê cung.
Thuật toán xác định hướng di chuyển của Robot:
Lặp lại động tác sau cho đến khi tìm thấy lối ra:
nếu bên trái không có tường thì
quay trái 90 độ
tiến một bước
nếu không thì
nếu phía trước không có tường thì
tiến một bước
nếu không thì
quay phải 90 độ.
Em hãy lập chương trình trong ngôn ngữ Scratch mô phỏng thuật toán bám tường.
Kéo và thả các khối lệnh từ thanh công cụ vào khu vực lập trình.
Sử dụng khối lệnh "Khi Green Flag được nhấn" để bắt đầu chương trình.
Sử dụng khối lệnh "Lặp lại vô hạn" để tạo vòng lặp chương trình.
Sử dụng khối lệnh "Nếu...thì" để kiểm tra có tường ở phía trước/ở bên trái hay không.
Trong khối lệnh "Nếu...thì", sử dụng khối lệnh "Di chuyển" để di chuyển nhân vật về phía trước, và khối lệnh "Xoay" để xoay nhân vật.


