1. Bản chất Toán học
Bài toán yêu cầu tìm số nguyên a thỏa mãn ba điều kiện đồng thời:
(a + 12) mod 5 = 2,
(a + 19) mod 6 = 1,
(a + 19) mod 7 = 5,
và 200 < a < 300.
Ta chuyển các điều kiện về dạng đồng dư:
• (a + 12) ≡ 2 (mod 5) → a ≡ 2 − 12 ≡ ‑10 ≡ 0 (mod 5)
• (a + 19) ≡ 1 (mod 6) → a ≡ 1 − 19 ≡ ‑18 ≡ 0 (mod 6)
• (a + 19) ≡ 5 (mod 7) → a ≡ 5 − 19 ≡ ‑14 ≡ 0 (mod 7)
Như vậy a phải đồng thời chia hết cho 5, 6 và 7.
LCM(5, 6, 7) = 210, nên a = 210 · k (k ∈ ℕ).
Giới hạn 200 < a < 300 cho phép chỉ có k = 1 → a = 210.
Kết luận: Số thỏa mãn yêu cầu là 210.
2. Tư duy Thuật toán Scratch
- Bước 1: Khi nhấn cờ xanh, khởi tạo biến
a = 201 (giá trị nhỏ nhất >200).
- Bước 2: Dùng vòng lặp
repeat until hoặc forever để duyệt các giá trị a từ 201 tới 299.
- Bước 3: Với mỗi a, tính ba phần dư:
(a + 12) mod 5
(a + 19) mod 6
(a + 19) mod 7
- Bước 4: Dùng khối
if để kiểm tra đồng thời ba điều kiện (toàn bộ bằng 2, 1, 5). Nếu đúng, hiển thị a và dừng chương trình.
- Bước 5: Nếu chưa đúng, tăng
a lên 1 và lặp lại.
- Bước 6: Khi vòng lặp kết thúc mà không tìm thấy, thông báo “Không có đáp án”. (Trong thực tế sẽ luôn tìm được 210.)
3. Nhóm khối Scratch cần dùng
Events 🟡: when green flag clicked – khởi động thuật toán.
Variables 🟧: tạo biến a (để lưu số đang kiểm tra) và kết_quả (để lưu đáp án nếu tìm được).
Control 🟠: repeat until (điều kiện a > 299), if then (kiểm tra ba đồng dư), stop all (khi tìm được đáp án).
Operators 🟢:
+ – tính a + 12, a + 19.
mod – lấy phần dư.
= – so sánh với 2, 1, 5.
and – kết hợp ba điều kiện.
Sensing 🩵: không cần thiết trong bài này, nhưng có thể dùng
say để hiển thị kết quả trên màn hình.
Kết hợp các khối trên sẽ cho ra một dự án Scratch ngắn gọn, dễ hiểu, giúp học sinh vừa luyện toán vừa luyện tư duy lập trình.
Các nhóm khối Scratch gợi ý:
khi bấm vào lá cờ xanh
hỏi [Nhập số liệu đề bài] và chờ
đặt [Ket_Qua v] thành (0)
lặp lại (trả lời) lần
((Ket_Qua) + (câu trả lời))
💡 Mẹo từ AI: Đảm bảo khởi tạo giá trị biến số bằng 0 trước khi bước vào vòng lặp!