Trò chơi nhặt số Hãy viết chương trình tạo ra trò chơi như mô tả dưới đây
Giải SBT Tin học 9 Cánh diều Bài 4: Dùng máy tính để giải quyết bài toán
Câu F23 trang 69 SBT Tin học 9: Trò chơi nhặt số: Hãy viết chương trình tạo ra trò chơi như mô tả dưới đây.
Mô tả: Một số quả bóng xuất hiện ngẫu nhiên, di chuyển theo một hướng bất kỳ ngẫu nhiên một thời gian rồi lại chuyển sang một hướng ngẫu nhiên khác và xuất hiện đồng thời với các bóng khác. Người chơi cần nhanh tay nháy chuột lên các quả bóng. Nếu nháy đúng, quả bóng sẽ biến mất và thời gian ngắn lại sau mỗi lần nháy đúng. Nếu không nháy đúng, điểm số của người chơi sẽ giảm. Trên màn hình luôn hiển thị điểm số của người chơi.
Chú ý:
- Quả bóng có giá trị lớn nhất là quả bóng bé nhất, di chuyển nhanh hơn những loại bóng khác và khó nháy đúng hơn.
- Trên màn hình luôn hiện không giới hạn thời gian và tất cả các quả bóng.
- Trên màn hình luôn hiển thị điểm số của người chơi lúc bắt đầu chơi.
Lời giải:
Xác định bài toán:
Input:
1 bóng ghi số 50; 2 bóng ghi số 30; 3 bóng ghi số 10.
Output:
Đoạn hoạt hình như trong mô tả trò chơi.
Tìm thuật toán:
Có 6 nhân vật bóng, tuy nhiên thuật toán điều khiển các nhân vật này nhìn chung giống nhau, chỉ khác ở tốc độ di chuyển, thời gian ẩn đi và điểm cộng vào cho người chơi mỗi khi con trỏ chuột chạm vào nhân vật đó.
Thuật toán cho nhân vật Bóng-50 có thể mô tả như sau:
Thuật toán: Điều khiển Bóng-50
Xuất hiện ở một vị trí ngẫu nhiên.
Xác định một hướng ngẫu nhiên (để di chuyển).
Lặp mãi mãi:
Đặt thời gian Time = 0.
Di chuyển một đoạn.
Nếu chạm cạnh sân khấu: Quay vào trong sân khấu.
Nếu chạm vào con trỏ chuột:
Điểm = Điểm + 50.
Ẩn đi một khoảng thời gian (1,2 giây).
Hiện lên ở một vị trí ngẫu nhiên.
Hết nhánh:
Xác định một hướng ngẫu nhiên (để di chuyển).
Nếu (Time > 60) thì dừng trò chơi.
Hết lặp.
Thuật toán cho Bóng-30, Bóng-10 tương tự, chỉ khác ở những điểm sau:
- Không cần đặt thời gian (vì thời gian là biến chung, đã được đặt trong chương trình điều khiển Bóng-50).
- Tăng độ khó bằng cách yêu cầu khi nhân vật chạm con trỏ chuột không phải là 50 mà phải tương ứng với số ghi trên nhân vật.
- Thời gian ẩn đi (khi chạm con trỏ chuột) lâu hơn so với Bóng-50.
- Tốc độ di chuyển chậm hơn so với Bóng-50.
- Không cần kiểm tra thời gian hết (vì khi thời gian hết, Bóng-50 đã dừng chương trình).
Chương trình điều khiển Bóng-30 và Bóng-10 tương tự với một số điểm khác như đã nêu ở trên. Vì có 2 Bóng-30 nên tạo 1 chương trình cho Bóng-30 rồi nhân bản. Tương tự với 3 Bóng-10.
Để tạo ra nhân vật bóng có ghi số, cần chọn nhân vật Ball sau đó vào Costumes, chọn công cụ thêm Text T rồi gõ số vào giữa quả bóng. Chạy chương trình trên sẽ nhận kết quả:
Lời giải sách bài tập Tin học 9 Bài 4: Dùng máy tính để giải quyết bài toán hay khác: