Yêu cầu đề bài: Hãy viết một chương trình Scratch để tìm số có 2 chữ số thỏa mãn điều kiện: khi viết thêm số 21 vào bên trái số đó thì ta được một số lớn gấp 31 lần số cần tìm.
Phân tích thuật toán & Soi mã nguồn Scratch .sb3
repeat
repeat until
say
Bài toán "Tìm Số Có 2 Chữ Số" thuộc phân môn Số học & Tính toán — nền tảng cốt lõi của toán tiểu học. Khi chuyển đổi bài toán trên giấy sang chương trình Scratch 3.0, học sinh không chỉ ôn luyện kỹ năng tính toán mà còn phát triển năng lực Tư duy máy tính (Computational Thinking) theo CT GDPT 2018. Quá trình giải bao gồm 4 trụ cột:
Chia bài toán có rẽ nhánh thành: (a) Thu thập dữ liệu đầu vào từ người dùng, (b) Kiểm tra điều kiện toán học (chia hết, so sánh, kiểm tra tính chất), (c) Hiển thị kết quả tương ứng với từng nhánh điều kiện.
Xác định quy luật toán học cốt lõi trong phân môn Số học ở mức Trung bình. Nhận diện cấu trúc lặp lại, điều kiện kiểm tra và mối quan hệ giữa các đại lượng trong đề bài.
Đại số hóa các đại lượng trong đề bài "Tìm Số Có 2 Chữ Số" thành các Biến số (Variables) trong bộ nhớ chương trình. Xác định rõ biến nào là Input (do người dùng nhập), biến nào là Output (kết quả cần tìm), biến nào là trung gian (dùng trong quá trình tính).
Biến số (Variables)
Thiết kế thuật toán rẽ nhánh Nếu... thì... / Nếu không thì... để xử lý các trường hợp khác nhau của bài toán. Đảm bảo mọi nhánh đều cho kết quả đúng.
Nếu... thì... / Nếu không thì...
Cốt lõi toán học của bài toán "Tìm Số Có 2 Chữ Số" dựa trên các phép tính số học và biểu thức đại số cơ bản ở cấp tiểu học:
Nếu...thì
21 * 100 + x = 31x
Dưới đây là kịch bản mô phỏng các khối lệnh Scratch cần lắp ghép để giải bài "Tìm Số Có 2 Chữ Số":
Để đảm bảo chương trình Scratch giải bài "Tìm Số Có 2 Chữ Số" hoạt động chính xác, hãy kiểm thử với các bộ dữ liệu sau:
Khi giải bài "Tìm Số Có 2 Chữ Số", biến Ket_Qua phải được đặt về 0 ngay đầu chương trình. Nếu quên, lần chạy thứ 2 trở đi sẽ cho kết quả sai do giá trị cũ còn lưu trong bộ nhớ.
Ket_Qua
Scratch chỉ có 3 toán tử so sánh: <, =, >. Để kiểm tra ≤ hoặc ≥, cần kết hợp bằng khối HOẶC: < (a < b) HOẶC (a = b) >. Bỏ sót sẽ sai ở giá trị biên.
<
=
>
≤
≥
HOẶC
< (a < b) HOẶC (a = b) >
Khối Hỏi và đợi lưu kết quả vào biến hệ thống câu trả lời. Nếu bài "Tìm Số Có 2 Chữ Số" cần nhập nhiều giá trị, phải lưu câu trả lời vào biến riêng (So_1, So_2...) ngay sau mỗi lần hỏi, trước khi hỏi câu tiếp theo.
Hỏi và đợi
câu trả lời
So_1
So_2
Nói (giá trị biến) trong 2 giây
.sb3