programming kid logo
home iconTrang chủ about iconGiới thiệu roadmap iconLộ Trình Học fees iconHọc Phí lecturers iconGiáo Viênblog  iconTin Tứccontact_us iconLiên Hệ
Đăng ký ngay
home iconTrang chủ about iconGiới thiệu roadmap iconLộ Trình Học fees iconHọc Phí lecturers iconGiảng Viên blog  iconTin Tức contact_us iconLiên Hệ
Banner ImageBanner ImageBanner Image

Giải đề thi Tin học trẻ 2026 – Bài 2: Bảng cửu chương (Scratch)

Giải đề thi Tin học trẻ 2026 – Bài 2: Bảng cửu chương (Scratch) là một trong những nội dung quan trọng giúp các em học sinh rèn luyện tư duy lập trình căn bản. Bài toán không chỉ kiểm tra khả năng sử dụng vòng lặp mà còn giúp học sinh hiểu sâu hơn về cách tối ưu hóa dữ liệu. Trong bài viết này, chúng ta sẽ cùng phân tích chi tiết yêu cầu của đề bài và tìm ra phương pháp lập trình hiệu quả nhất trên nền tảng Scratch.

Đề bài:

1. Phân tích đề bài

Đề bài yêu cầu:

  • Cho trước một số tự nhiên X (1 ≤ X ≤ 100).

  • Tìm số thứ tự của bảng cửu chương nhỏ nhất (từ 1 đến 9) có chứa kết quả bằng X.

  • Nếu X không nằm trong bảng cửu chương nào (không thể tạo thành từ phép nhân hai số từ 1 đến 9), in ra 0.

Ví dụ:

  • Nhập X = 12: Các phép nhân có thể là 2 x 6, 3 x 4, 4 x 3, 6 x 2. Số thứ tự bảng nhỏ nhất là 2.

  • Nhập X = 14: Có 2 x 7 = 14. Kết quả là 2.

  • Nhập X = 13: Không có phép nhân nào trong bảng cửu chương cho kết quả 13. Kết quả là 0.

2. Ý tưởng giải toán

Để tìm được bảng cửu chương nhỏ nhất chứa X, chúng ta sẽ thực hiện duyệt các số từ 1 đến 9 (tương ứng với các bảng cửu chương từ 1 đến 9).

Thuật toán cụ thể:

  1. Sử dụng một biến chạy i bắt đầu từ 1.

  2. Kiểm tra xem X có chia hết cho i hay không (X chia lấy dư cho i) = 0).

  3. Nếu chia hết, ta cần kiểm tra thêm điều kiện thứ hai: Thương của phép chia (X / i) có phải là một số từ 1 đến 9 hay không.

  4. Nếu thỏa mãn cả hai điều kiện, thì i chính là bảng cửu chương nhỏ nhất cần tìm. Chúng ta sẽ lưu giá trị i và dừng chương trình ngay lập tức.

  5. Nếu duyệt hết từ 1 đến 9 mà không tìm thấy, kết quả mặc định sẽ là 0.

3. Hướng dẫn lập trình Scratch chi tiết

Dựa trên thuật toán trên, chúng ta sẽ xây dựng các khối lệnh như sau:

Bước 1: Khởi tạo biến

Bạn cần tạo các biến số:

  • X: Lưu giá trị nhập vào từ bàn phím.

  • i: Biến chạy để kiểm tra từng bảng cửu chương.

  • KetQua: Lưu số thứ tự của bảng cửu chương tìm được.

Bước 2: Xây dựng khối lệnh (Script)

  • Sử dụng khối “Định nghĩa” (Giai_Toan_Bang_Cuu_Chuong) để chương trình gọn gàng hơn.

  • Dùng vòng lặp “Lặp lại 9 lần” để kiểm tra i từ 1 đến 9.

  • Sử dụng khối “Nếu… thì” kết hợp toán tử “và” để kiểm tra đồng thời hai điều kiện.

Mẹo nhỏ: Việc sử dụng khối lệnh dừng lại kịch bản này ngay khi tìm thấy i đầu tiên sẽ giúp chương trình chạy nhanh hơn và đảm bảo kết quả là bảng cửu chương “nhỏ nhất”.

Khối chương trình chính

Khi bấm vào cờ xanh

  • Chương trình bắt đầu chạy.

hỏi "Nhập X" và đợi

  • Nhận giá trị X từ người dùng.

đặt X thành trả lời

  • Lưu giá trị người dùng nhập vào biến X.

đặt KetQua thành 0

  • Khởi tạo biến KetQua = 0.
    Điều này có nghĩa: mặc định coi như X không nằm trong bảng cửu chương, trừ khi tìm được sau đó.

Gọi hàm Giai_Toan_Bang_Cuu_Chuong

  • Bắt đầu xử lý để tìm bảng cửu chương phù hợp.

nói KetQua

  • In kết quả cuối cùng ra màn hình.

Khối xử lý chính – Tìm bảng cửu chương

đặt i = 1

  • Bắt đầu kiểm tra từ bảng 1.

lặp lại 9

  • Duyệt lần lượt các bảng cửu chương từ 1 đến 9.

Điều kiện quan trọng

Điều kiện trong khối nếu:

  • X chia lấy dư cho i = 0
    → Nghĩa là X chia hết cho i (X có thể viết thành i × k).
  • X / i < 10
    → Nghĩa là k ≤ 9, tức là kết quả nằm trong phạm vi bảng cửu chương.

Khi cả hai điều kiện đều đúng, ta kết luận:

X thuộc bảng cửu chương thứ i.

Khi tìm thấy bảng phù hợp

  • đặt KetQua thành i
    → Lưu lại số thứ tự của bảng.
  • dừng lại kịch bản này
    → Thoát ngay, vì ta cần bảng nhỏ nhất chứa X.

Nếu chưa tìm thấy

  • thay đổi i một lượng 1
    → Tăng i lên để kiểm tra bảng tiếp theo.

Tóm tắt luồng hoạt động:

  1. Nhập X
  2. Giả sử không thuộc bảng nào (KetQua = 0)
  3. Kiểm tra lần lượt bảng 1 → 9
  4. Nếu tìm thấy bảng thỏa → lưu kết quả và dừng
  5. Nếu không tìm thấy → giữ nguyên 0

Code Scratch đầy đủ:

Kết luận:

  • Bài toán rèn luyện tư duy về phép chia hết và duyệt tuần tự.
  • Cách làm hiệu quả, dễ hiểu, phù hợp cho người mới học lập trình.
  • Có thể mở rộng bài toán với bảng nhân lớn hơn hoặc nhiều điều kiện hơn.

Phụ huynh đăng ký ôn thi cho con vui lòng click vào link: https://daotaocongnghetreem.com/dang-ky-ngay

Eclipse
Đào Tạo Công Nghệ Trẻ Em
Logo

Liên hệ

  • Số 7. Ngách 99/145 Tổ 17 Định Công Hạ, P. Định Công – Q. Hoàng Mai – TP. Hà Nội
  • (+84) 828-733-888
  • daotaocongnghetreem@gmail.com
Zalo
Threads
Pin
Pin

Số 75 Nguyễn Huệ, P.2, TP Vĩnh Long

Pin
Pin

Trung tâm Văn hóa Thể thao xã Đông Hội, huyện Đông Anh,TP. Hà Nội

Pin
Pin

130 KĐT Cổ Dương, Tiên Dương, Đông Anh, Hà Nội

Messenger
Zalo
Zalo
(+84) 828-733-888