Sắp ra mắt
Nâng cao · Mức D · Bài 5

Máy đoán số bằng cách chia đôi

Mục tiêu: Người chơi nghĩ một số từ 1 đến 100, máy đoán ra trong tối đa 7 lần bằng cách luôn đoán số ở giữa.

Em sẽ học gì

  • Nội dung trong bài: thuật toán chia đôi. Luôn đoán số ở giữa, để mỗi lần loại bỏ một nửa khả năng.
  • Hai biến thap và cao giữ khoảng tìm kiếm, và thu hẹp dần.
  • Và so sánh với cách đoán lần lượt từng số.
Kết quả cần đạt
Kết quả cần đạt: bấm cờ xanh để chạy thử.
139

Bài làm như sau. Chọn nhóm Biến số, bấm Tạo một biến, đặt tên là thap: số nhỏ nhất còn có thể. Tạo biến cao: số lớn nhất còn có thể. Biến doan: số máy đang đoán. Và biến dem: đếm số lần đoán.

Bước 1

Thuật toán: thap = 1, cao = 100. Lặp cho đến khi đoán đúng: doan = số ở giữa thap và cao. Số cần tìm lớn hơn thì thap = doan + 1; nhỏ hơn thì cao = doan − 1.

239

Sơ đồ khối ở khung bên phải. Đầu tiên: thap bằng 1, cao bằng 100, dem bằng 0, rồi chờ người chơi nghĩ số. Vòng lặp chạy cho đến khi người chơi trả lời dấu bằng. Mỗi lần: doan là số ở giữa, dem tăng 1, rồi hỏi. Trả lời lớn hơn thì thap bằng doan cộng 1. Trả lời nhỏ hơn thì cao bằng doan trừ 1. Khi đoán đúng, vòng lặp dừng, máy nói số lần đoán.

Bước 2

Phần còn lại của bài sắp ra mắt

Bạn đang xem 2 / 39 bước. Trong lúc chờ, em hãy học các bài miễn phí của khoá Cơ bản nhé.

Học các bài miễn phí
Sắp xếp mảng danh sách, thuật toán Nổi bọt Đếm chữ cái và đảo ngược chuỗi
ZaloCộng đồng hỗ trợ lập trình ScratchCộng đồng hỗ trợ