Yêu cầu đề bài: Một người viết liên tiếp nhóm chữ 'toquocvietnam' thành dãy 'toquocvietnam toquocvietnam ...'. Hãy tìm chữ cái thứ 1996 trong dãy này. Sau đó, người ta đếm được trong dãy có 50 chữ 't', hỏi dãy đó có bao nhiêu chữ 'o', bao nhiêu chữ 'i'? Bạn An đếm được trong dãy có 2007 chữ 'o', hỏi bạn ấy đếm đúng hay sai? Vì sao? Cuối cùng, người ta tô màu vào các chữ cái trong dãy trên theo thứ tự: xanh, đỏ, tím, vàng, xanh, đỏ, tím, vàng, ... Hãy hỏi chữ cái thứ 2007 được tô màu gì?
Phân tích thuật toán & Soi mã nguồn Scratch .sb3
repeat
repeat until
say
Bài toán "Dãy chữ 'toquocvietnam'" thuộc nhóm Logic & Game tương tác — kết hợp giữa suy luận logic toán học với kỹ thuật lập trình trò chơi trong Scratch 3.0. Học sinh cần phân tích luật chơi, xác định các trạng thái (state) và điều kiện chuyển tiếp (transition) để xây dựng chương trình hoạt động mượt mà. Theo CT GDPT 2018, 4 trụ cột Tư duy máy tính sẽ được vận dụng:
Chia nhỏ bài toán "Dãy chữ 'toquocvietnam'" thành 3 giai đoạn: (a) Tiếp nhận dữ liệu đầu vào, (b) Áp dụng phép tính và công thức toán học, (c) Hiển thị và kiểm chứng kết quả.
Xác định quy luật toán học cốt lõi trong phân môn Logic & Game ở 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.
Quy đổi yêu cầu đếm / liệt kê thành các Biến đếm (Counter) và Biến tích lũy (Accumulator) trong Scratch. Loại bỏ các chi tiết ngữ cảnh thực tế, chỉ giữ lại logic đếm thuần túy.
Biến đếm (Counter)
Biến tích lũy (Accumulator)
Xây dựng trình tự tuần tự (Sequential) các khối lệnh: nhập dữ liệu → tính toán theo công thức → hiển thị kết quả. Kiểm tra chương trình hoạt động chính xác với nhiều bộ dữ liệu thử nghiệm khác nhau.
Bài toán logic "Dãy chữ 'toquocvietnam'" yêu cầu phân tích các trạng thái hợp lệ và quy tắc chuyển đổi. Nền tảng toán học bao gồm logic mệnh đề (Đúng/Sai), phép so sánh và đếm trạng thái:
None
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 "Dãy chữ 'toquocvietnam'":
Để đảm bảo chương trình Scratch giải bài "Dãy chữ 'toquocvietnam'" 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 "Dãy chữ 'toquocvietnam'", 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 không có dấu ngoặc đơn, học sinh phải lồng các khối Cộng/Trừ vào trong khối Nhân/Chia theo đúng quy tắc ưu tiên toán học. Với công thức None, hãy lồng từ trong ra ngoài.
Cộng/Trừ
Nhân/Chia
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 "Dãy chữ 'toquocvietnam'" 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
Khi nhấn phím [mũi tên v]
Khi nhấp vào nhân vật này
Điểm
Phát âm thanh
.sb3