Sách bài tập Tin học 8 Bài 5: Thể hiện cấu trúc lặp trong chương trình
Câu F21 trang 57 SBT Tin học 8: Trong các câu dưới đây, những câu nào đúng trong Scratch?
1) Mọi câu lệnh lặp đều đúng một biểu thức logic làm điều kiện lặp
2) Có hai khối lệnh để thể hiện cấu trúc lặp của thuật toán
3) Có thể có một khối lệnh lặp trong các thao tác cần lặp của một khối lệnh lặp khác (cấu trúc lặp nằm trong một cấu trúc lặp khác)
4) Có thể có một khối lệnh rẽ nhánh trong các thao tác cần lặp của một khối lệnh lặp (cấu trúc rẽ nhánh nằm trong một cấu trúc lặp)
Lời giải:
Câu đúng 3 và 4
1) Sai. Vì lặp với số lần biết trước thì không cần điều kiện lặp
2) Sai. Vì có ba khối lệnh lặp trong Scratch; repeat…; repeat…until…; forever..
1) Lặp 3 lần:
Đặt bút xuống
Di chuyển 50 bước
Quay theo chiều kim đồng hồ 120o
Hết lặp
2) Tổng = 0
Số lần = 0
Lặp cho đến khi (Tổng > 155):
Tăng số lần lên 1 đơn vị
Yêu cầu nhập một số vào biến x
Cộng thêm x vào Tổng
Hết lặp
Thông báo “Sau” “số nhập vào, tổng các số đó đã lớn hơn 155”
3) Lặp vô hạn
Nhân vật quay theo một góc ngẫu nhiên lấy trong khoảng (−90o;90o)
Nhân vật di chuyển 20 bước
Tạm dừng 0.5 giây
Nếu nhân vật chạm cạnh sân khấu
Thông báo “Chào tạm biệt” trong 2 giây
Dừng tất cả chương tình
Hết nhánh
Hết lặp vô hạn
Lời giải:
Câu F23 trang 58 SBT Tin học 8:
Đặt bút xuống
Lặp 3 lần
Di chuyển 50 bước
Quay theo chiều kim đồng hộ 120o
Hết lặp
Quay theo chiều kim đồng hồ 36o
Đổi màu bút
Hết lặp
2) Hãy thể hiện trong Scratch cấu trúc lặp sau đây và sau đó hoàn thiện để được chương trình kiểm tra số nguyên dương N nhập vào từ bàn phím có phải số nguyên tố hay không.
m = 2
số ước = 0
Lặp đến khi (m > N/2):
Nếu (N chia hết cho m):
số ước cộng thêm 1
Hết nhánh
M cộng thêm 1
Hết lặp
Lời giải:
1) Đoạn chương trình ở Hình 2 nhằm làm khủng long nhảy lên mỗi khi phím space được nhấn một cái (khủng long nhảy lên để tránh chạm vào cây xương rồng). Em hãy tạo chương trình điều khiển nhân vật khủng long chạy từ bên trái màn hình sang bên phải màn hình và khi cây xương rộng xuất hiện, người chơi nhấn phím space thì khủng long nhảy lên cao vượt qua xương rồng để tránh rồi hạ xuống chạy tiếp.
2) Nếu đoạn chương trình ở Hình 2 sửa lại thành như ở Hình 3, em hãy chạy thử chương trình điều khiển khủng long và giải thích vì sao đoạn chương trình Hình 3 không điều khiển khủng long được như ý muốn
3) Tạo đoạn chương trình cho hai nhân vật ground1 và ground2 chạy ngược chiều khủng long và khi chạm biên trái của sân khấu thì đặt lại chúng vào vị trí biên phải sân khấu
Lời giải:
1) Chương trình điều khiển nhân vật khủng long: khủng long chạy liên tục và việc kiểm tra xem có sự kiện nhấn phím space không cũng cần diễn ra liên tục
2) Chạy thử chương trình trong trường hợp thay đoạn chương trình trong Hinh 2 bằng đoạn trong Hình 3. Ta thấy: Nếu đến sát xương rồng khủng long nhảy lên thì rơi xuống ngay lập tức nên luôn chạm phải xương rồng. Bởi vậy, cần tạo một độ trễ cho thời gian nhảy lên và hạ xuống để khủng long có thời gian cho xương rồng chạy qua.
3) Chương trình cho bối cảnh ground1 và ground2 giống nhau. Chỉ khác ở vị trí bắt đầu
Lời giải:
Catus chạy liên tục và việc kiểm tra xem sự kiện chạm khủng long không cũng cần diễn ra liên tục. Nếu chạm khủng long thì trò chơi dừng lại, có thể dùng một đối tượng khác thể hiện dòng chữ “Game Over”. Nhân vật này lúc đầu trò chơi được ẩn đi, khi có tin nhắn từ catus thì nhân vật này được hiện lên trên màn hình.
Xem thêm các bài giải SBT Tin học 8 Cánh diều hay, chi tiết khác:
Bài 3: Sử dụng biểu thức trong chương trình
Bài 4: Thể hiện cấu trúc rẽ nhánh trong chương trình
Bài 6: Thực hành tìm và sửa lỗi