👦
ETAN Student
Danh mục học tập
Quay lại Danh sách Bài toán
Thuật toán Trung bình GDPT 2018

Kiểm tra Số Nguyên Tố trong Scratch

Công thức trọng tâm: Lặp từ 1 đến N đếm số ước

Yêu cầu đề bài: Nhập N. Số nguyên tố là số lớn hơn 1 và chỉ có 2 ước số là 1 và chính nó. Dùng vòng lặp Scratch kiểm tra số ước của N.

Ví dụ mẫu (Input / Output):
Input: N = 7 -> Output: '7 la so nguyen to!'

Trình chạy thử Scratch Player

💡 Mẹo: Nếu màn hình hiển thị "Oops! Something went wrong" (do bài toán chưa có ID công khai), hãy bấm nút [ 🛠️ Scratch Editor ] phía trên để tự tạo và thử nghiệm khối lệnh Scratch trực tiếp!

Trợ lý AI Scratch Math

Phân tích thuật toán & Soi mã nguồn Scratch .sb3

Phân tích thuật toán: Đề bài yêu cầu học sinh sử dụng các biến số để lưu trữ giá trị đầu vào, dùng vòng lặp repeat hoặc repeat until để tính toán và khối lệnh say để hiển thị kết quả.
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!

1. Phân Tích Đề Bài & Tư Duy Máy Tính (Computational Thinking)

Bài toán "Kiểm tra Số Nguyên Tố trong Scratch" là một thách thức về Thuật toán & Xử lý logic, yêu cầu học sinh phải thiết kế trình tự xử lý dữ liệu đúng đắn trong Scratch 3.0. Không chỉ đơn thuần là bài toán tính nhẩm, đây là bài rèn luyện tư duy lập trình — khả năng phân rã vấn đề phức tạp thành chuỗi bước máy tính có thể thực thi. Quá trình giải bao gồm 4 trụ cột Tư duy máy tính (Computational Thinking):

1. Phân rã (Decomposition)

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.

2. Nhận dạng mẫu (Pattern)

Xác định quy luật toán học cốt lõi trong phân môn Thuật toán ở 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.

3. Trừu tượng hóa (Abstraction)

Đại số hóa các đại lượng trong đề bài "Kiểm tra Số Nguyên Tố trong Scratch" 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).

4. Thiết kế Thuật toán

Thiết kế chuỗi khối lệnh sử dụng Vòng lặp (Repeat N lần) làm trục chính, kết hợp biến đếm tăng dần sau mỗi lần lặp. Kiểm tra thuật toán đạt kết quả chính xác sau đúng N bước lặp.

2. Phương Pháp Toán Học & Cơ Sở Lý Thuyết

Thuật toán của bài toán "Kiểm tra Số Nguyên Tố trong Scratch" đòi hỏi thiết kế quy trình xử lý dữ liệu có hệ thống. Cốt lõi nằm ở việc chuyển đổi bài toán suy luận sang chuỗi phép toán máy tính có thể thực thi tuần tự:

Biểu thức / Công thức toán học then chốt:
Lặp từ 1 đến N đếm số ước

Các bước suy luận từng bước:

  • Bước 1 (Xác định phạm vi duyệt): Xác định giá trị bắt đầu, giá trị kết thúc và bước nhảy của vòng lặp. Ví dụ: duyệt từ 1 đến N, hoặc duyệt các phần tử trong danh sách.
  • Bước 2 (Thiết lập biểu thức trong vòng lặp): Trong mỗi lần lặp, áp dụng công thức Lặp từ 1 đến N đếm số ước để tính toán và cập nhật biến tích lũy (tổng, đếm, max/min).
  • Bước 3 (Kiểm tra điều kiện dừng): Đảm bảo vòng lặp kết thúc đúng lúc — không thiếu (bỏ sót phần tử) và không thừa (lặp vô hạn hoặc tràn giá trị).

3. Kịch Bản & Thiết Kế Khối Lệnh Scratch 3.0 (Visual Blocks)

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 "Kiểm tra Số Nguyên Tố trong Scratch":

Kịch bản khối lệnh — Kiểm tra Số Nguyên Tố trong Scratch:
khi bấm vào [lá cờ xanh]
đặt [Ket_Qua v] thành (0)
đặt [Bien_Dem v] thành (1)
nói [Cùng giải bài "Kiểm tra Số Nguyên Tố trong Scratch" nhé!] trong (2) giây
hỏi [Nhập giá trị N:] và đợi
đặt [N v] thành (câu trả lời)
lặp lại (N) lần {
đổi [Ket_Qua v] thêm ( Lặp từ 1 đến N đếm số ước )
đổi [Bien_Dem v] thêm (1)
}
nói (kết hợp [Kết quả: ] với (Ket_Qua)) trong (5) giây
dừng lại [kịch bản này v]
Nhóm khối lệnh chính sử dụng trong bài này: Sự kiện (Events), Biến số (Variables), Cảm biến (Sensing), Hiển thị (Looks), Điều khiển — Vòng lặp (Control: Repeat).

4. Bảng Thử Nghiệm & Kiểm Thử Thuật Toán (Test Cases)

Để đảm bảo chương trình Scratch giải bài "Kiểm tra Số Nguyên Tố trong Scratch" hoạt động chính xác, hãy kiểm thử với các bộ dữ liệu sau:

Trường HợpDữ Liệu Đầu Vào (Input)Kết Quả Kỳ Vọng (Output)Mục đích
TC 1Input: N = 7 -> Output: '7 la so nguyen to!'Giá trị tính đúng theo công thứcChuẩn đề bài
TC 2N = 1 (lặp 1 lần — trường hợp biên nhỏ nhất)Kết quả = giá trị khởi tạo + 1 bướcĐiều kiện biên
TC 3N = 100 (số lần lặp lớn)Chạy nhanh, không bị treo (< 2 giây)Hiệu năng
TC 4N = 0 (không lặp)Kết quả = giá trị khởi tạo ban đầuBiên / Đặc biệt

5. Các Lỗi Phổ Biến & Hướng Dẫn Gỡ Lỗi (Debugging)

Lỗi 1: Quên khởi tạo lại biến

Trong bài "Kiểm tra Số Nguyên Tố trong Scratch" sử dụng vòng lặp, biến Ket_QuaBien_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.

Lỗi 2: Sai số lần lặp (Off-by-one)

Đế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.

Lỗi 3: Mất dữ liệu Input khi hỏi nhiều lần

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 "Kiểm tra Số Nguyên Tố trong Scratch" 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.

6. Câu Hỏi Thường Gặp Về Bài Toán "Kiểm tra Số Nguyên Tố trong Scratch"

Bài toán ở mức Trung bình, phù hợp với học sinh Lớp 3-5 đã biết kéo thả khối lệnh cơ bản trong Scratch và nắm được khái niệm biến số.

Hãy dùng khối Nói (giá trị biến) trong 2 giây để hiển thị giá trị từng biến trung gian sau mỗi bước tính. So sánh giá trị hiển thị với kết quả nhẩm — bước nào sai sẽ lộ ra ngay. Đây là kỹ thuật Debug bằng Print cơ bản.

Em chỉ cần lưu file dự án từ phần mềm Scratch về máy tính dưới dạng file đuôi .sb3, sau đó chọn thẻ [ 🔍 AI Debug .sb3 ] ở cột bên phải và bấm tải file lên. Trợ lý AI của ETAN sẽ tự động phân tích từng khối lệnh và đưa ra nhận xét chi tiết!
🍪 ETAN sử dụng cookie để duy trì phiên học tập và hiển thị quảng cáo phù hợp (phi cá nhân hóa). Tìm hiểu thêm