Yêu cầu đề bài: Học sinh viết chương trình Scratch cho phép chú mèo hỏi người dùng nhập số nguyên dương N. Sau đó tính tổng các số từ 1 tới N và nói ra kết quả.
N
1
Yêu cầu đề bài: Nhập vào giá trị N. Sử dụng vòng lặp Repeat và câu lệnh điều kiện If...Then để kiểm tra tính chất thuật toán.
Repeat
If...Then
Yêu cầu đề bài: Sử dụng nhóm khối lệnh Bút vẽ (Pen) để di chuyển và xoay góc 360 / N độ để vẽ hình hoàn chỉnh.
360 / N
Yêu cầu đề bài: Học sinh sử dụng khối lệnh Scratch cho phép chú mèo hỏi người dùng nhập số nguyên dương N. Sau đó tính toán và phát ra kết quả.
Phân tích thuật toán & Soi mã nguồn Scratch .sb3
repeat
repeat until
say
Bài toán "Tính tổng dãy số từ 1 đến N" 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 sử dụng vòng lặp thành: (a) Khởi tạo biến ban đầu và nhập dữ liệu, (b) Thiết kế vòng lặp xử lý từng phần tử / bước tính, (c) Thoát vòng lặp và xuất kết quả cuối cùng.
Xác định quy luật toán học cốt lõi trong phân môn Số học ở mức Dễ. 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ính tổng dãy số từ 1 đến N" 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)
Xây dựng thuật toán kết hợp Vòng lặp (Repeat/Forever) lồng Rẽ nhánh (If-Else) — kiểu mẫu phổ biến trong bài toán duyệt và lọc. Cần đảm bảo điều kiện thoát vòng lặp đúng để tránh lặp vô hạn.
Vòng lặp (Repeat/Forever)
Rẽ nhánh (If-Else)
Cốt lõi toán học của bài toán "Tính tổng dãy số từ 1 đến N" 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:
S = N * (N + 1) / 2 hoặc dùng Vòng lặp lặp N lần
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ính tổng dãy số từ 1 đến N":
Để đảm bảo chương trình Scratch giải bài "Tính tổng dãy số từ 1 đến N" hoạt động chính xác, hãy kiểm thử với các bộ dữ liệu sau:
Trong bài "Tính tổng dãy số từ 1 đến N" sử dụng vòng lặp, biến Ket_Qua và Bien_Dem PHẢI được đặt lại về 0 ngay sau khối khi bấm cờ xanh. Nếu quên, lần chạy thứ 2 sẽ cộng dồn sai.
Ket_Qua
Bien_Dem
khi bấm cờ xanh
Đếm từ 1 đến N cần lặp đúng N lần, nhưng đếm từ 0 đến N−1 cũng là N lần. Sai 1 đơn vị (off-by-one) là lỗi rất phổ biến — hãy kiểm tra bằng Test Case với N nhỏ để phát hiện sớm.
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ính tổng dãy số từ 1 đến N" 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