Tuyển sinh 🎓 Mình nhận đào tạo lập trình giải thuật thi đấu: thi vào lớp 10 chuyên tin · thi học sinh giỏi tin học cấp tỉnh/thành · thi vào đội tuyển quốc gia · Olympic tin học sinh viên / ICPC · phỏng vấn thuật toán. Bấm vào đây để xem thông tin khóa học → Xem khóa học
Thi thử miễn phí
🏆 Thi thử HSG Tin học tuần này trên ClueOJ
Mở công khai cho mọi người · đề do thầy Nguyễn Việt Nam Sơn biên soạn
Lịch thi, đề cũ & lời giải →

Bài 1: Hướng dẫn cài đặt Themis – Phần mềm chấm bài lập trình offline cho giáo viên Tin học

Bài 1: Hướng dẫn cài đặt Themis – Phần mềm chấm bài lập trình offline cho giáo viên Tin học

Chấm 40 bài làm, mỗi bài 10 test bằng tay mất cả buổi tối. Với phần mềm Themis, thầy cô chỉ cần chuẩn bị bộ test một lần, bấm một phím và có ngay bảng điểm cho cả lớp – hoàn toàn offline, miễn phí, giao diện tiếng Việt. Bài viết hướng dẫn từng bước từ tải về đến chấm và xuất kết quả.

Hướng dẫn cài đặt Themis chấm bài offline cho giáo viên

Bài thứ nhất của chuyên mục "Góc giáo viên" – chuỗi bài dành cho thầy cô dạy Tin học và bồi dưỡng học sinh giỏi. Tên một số mục trong menu có thể khác đôi chút giữa các phiên bản; khi cần, thầy cô bấm F1 để xem Hướng dẫn đi kèm phần mềm.

👩‍🏫 Thầy cô đang bồi dưỡng đội tuyển HSG Tin? Khóa học dành cho giáo viên giúp thầy cô cập nhật kiến thức, nhận đề thi và được hỗ trợ bài tập lâu dài. Liên hệ Zalo 0767666702 hoặc bấm nút "Đăng ký học" ở đầu trang.

1. Themis là gì?

Themis là phần mềm chấm bài lập trình tự động do TS. Lê Minh Hoàng và TS. Đỗ Đức Đông phát triển. Phần mềm chạy trên Windows, biên dịch bài làm của học sinh (Pascal, C++, Python, Java), chạy với từng test, so sánh kết quả và cộng điểm. Theo trang chính thức của tác giả, phiên bản mới nhất là 1.9.8 (build 2806), phát hành ngày 16/8/2019.

2. Chuẩn bị trước khi cài

Themis chạy trên Windows (từ XP trở lên). Nếu muốn xuất bảng điểm ra Excel, máy cần có Microsoft Excel. Trang của tác giả có bốn gói cài đặt; sơ đồ dưới đây giúp thầy cô chọn nhanh:

Chọn phiên bản: phần lớn thầy cô nên dùng bộ cài đặt đầy đủ (theo danh sách phiên bản trên trang của tác giả).
Hình 1. Chọn phiên bản: phần lớn thầy cô nên dùng bộ cài đặt đầy đủ (theo danh sách phiên bản trên trang của tác giả).
GóiKèm theoKhi nào dùng
Bộ cài đặt đầy đủCó sẵn Free Pascal 3.0.4, GCC 8.2.0, JDK 7, Python 3.3Nên chọn nếu máy chưa cài trình biên dịch
Bộ cài đặt rút gọnKhông kèm trình biên dịchMáy đã cài Code::Blocks, Python… và muốn tự cấu hình
Bản SFX / Mini_SFXBản tự giải nén của hai gói trênMáy không có quyền quản trị (admin)

Các hình trong bài là hình minh họa mô phỏng để thầy cô dễ hình dung từng bước; giao diện thật có thể khác đôi chút giữa các phiên bản.

3. Bước 1 – Tải Themis

  1. Mở trang chính thức của tác giả: dsapblog – Themis. Nên tải từ đây để tránh các bản bị chỉnh sửa trên mạng.
  2. Bấm vào gói muốn tải (hoặc dùng các nút bên dưới – link được lấy từ trang của tác giả). Trang Google Drive mở ra.
  3. Bấm biểu tượng Tải xuống ở góc trên bên phải. Nếu Google Drive báo không quét được vi-rút với file lớn, bấm Vẫn tải xuống.
  4. File cài đặt nằm trong thư mục Downloads của máy.

⬇ Bộ cài đặt đầy đủ⬇ Bộ cài đặt rút gọn⬇ Kỳ thi mẫu để thử

Bước 1: mở trang của tác giả, chọn bản cài đặt, tải file từ Google Drive về máy.
Hình 2. Bước 1: mở trang của tác giả, chọn bản cài đặt, tải file từ Google Drive về máy.

4. Bước 2 – Cài đặt

  1. Nháy đúp file vừa tải.
  2. Nếu Windows hiện cửa sổ "Windows đã bảo vệ PC của bạn" (SmartScreen), bấm Thông tin bổ sung rồi Vẫn chạy. Cảnh báo này thường gặp với phần mềm tải từ Internet không có chữ ký số; chỉ làm vậy với file tải từ trang của tác giả.
  3. Giữ thư mục cài đặt mặc định, bấm Tiếp theo (Next) cho đến khi Hoàn tất (Finish).
  4. Mở Themis. Lần đầu nên mở Kỳ thi mẫu để xem cấu trúc một kỳ thi hoàn chỉnh.
Bước 2: nếu Windows SmartScreen cảnh báo, bấm "Thông tin bổ sung" → "Vẫn chạy", sau đó làm theo trình cài đặt.
Hình 3. Bước 2: nếu Windows SmartScreen cảnh báo, bấm "Thông tin bổ sung" → "Vẫn chạy", sau đó làm theo trình cài đặt.

Màn hình chính gồm menu, thanh công cụ và vùng làm việc với hai thẻ Bảng điểm và Hướng dẫn. Phím F1 mở hướng dẫn sử dụng đi kèm phần mềm.

Màn hình chính: menu, thanh công cụ và vùng làm việc gồm hai thẻ Bảng điểm và Hướng dẫn. Bấm F1 để mở hướng dẫn đi kèm phần mềm.
Hình 4. Màn hình chính: menu, thanh công cụ và vùng làm việc gồm hai thẻ Bảng điểm và Hướng dẫn. Bấm F1 để mở hướng dẫn đi kèm phần mềm.

Nếu dùng bộ cài đặt rút gọn, mở Thiết lập môi trường (phím F11) và khai báo đường dẫn tới trình biên dịch đã cài trên máy (Free Pascal, g++ trong thư mục MinGW của Code::Blocks, Python).

5. Bước 3 – Chuẩn bị thư mục đề thi và bài làm

Themis làm việc với hai thư mục: thư mục đề thi (chứa bộ test) và thư mục bài làm (mỗi học sinh một thư mục con). Ví dụ kỳ thi có bài DOANCON:

Bước 3: cấu trúc thư mục Themis cần – thư mục đề thi (Tasks) và thư mục bài làm (Contestants).
Hình 5. Bước 3: cấu trúc thư mục Themis cần – thư mục đề thi (Tasks) và thư mục bài làm (Contestants).
Ba quy tắc tránh lỗi: (1) tên file bài làm phải trùng tên bài (DOANCON.cpp, DOANCON.pas, DOANCON.py); (2) tên file trong mỗi thư mục test trùng tên bài, đuôi .INP và .OUT; (3) nên đặt tên thư mục không dấu, không khoảng trắng để tránh lỗi đường dẫn.
Năm cách đặt file bài làm: chỉ cách đầu tiên được Themis nhận đúng.
Hình 6. Năm cách đặt file bài làm: chỉ cách đầu tiên được Themis nhận đúng.

Cách tạo bộ test nhanh và chính xác được hướng dẫn chi tiết ở Bài 2 của chuyên mục.

6. Bước 4 – Nạp bài thi và thí sinh

  1. Bấm F2 (Nạp danh sách bài thi), chọn thư mục Tasks. Tên bài DOANCON hiện trên hàng phía trên bảng điểm.
  2. Bấm F3 (Nạp danh sách thí sinh), chọn thư mục Contestants. Danh sách HS01, HS02… hiện trong bảng.
Bước 4: F2 nạp danh sách bài thi từ thư mục Tasks, F3 nạp danh sách thí sinh từ thư mục Contestants.
Hình 7. Bước 4: F2 nạp danh sách bài thi từ thư mục Tasks, F3 nạp danh sách thí sinh từ thư mục Contestants.

7. Bước 5 – Cấu hình bài thi

  1. Nháy chuột phải vào tên bài trên hàng phía trên bảng điểm, chọn Cấu hình bài thi (hoặc menu Bài thi → Cấu hình bài thi).
  2. Đặt Giới hạn thời gian (giây), Giới hạn bộ nhớ (MiB) và Điểm của test. Bấm Thiết lập chung để áp một giá trị cho tất cả các test.
  3. Nếu bài đọc/ghi qua bàn phím – màn hình, đánh dấu Dùng luồng vào chuẩn (stdin) và Dùng luồng ra chuẩn (stdout); để trống nếu bài dùng file DOANCON.INP/DOANCON.OUT.
  4. Bấm Ghi nhận để lưu.
Bước 5: đặt giới hạn thời gian, bộ nhớ, điểm từng test và cách đọc/ghi dữ liệu; bấm "Thiết lập chung" để áp cho tất cả các test.
Hình 8. Bước 5: đặt giới hạn thời gian, bộ nhớ, điểm từng test và cách đọc/ghi dữ liệu; bấm "Thiết lập chung" để áp cho tất cả các test.

8. Bước 6 – Chấm bài và xuất kết quả

  • Bấm F9 để chấm toàn bộ. Bảng điểm hiện điểm từng bài của mỗi học sinh.
  • Bấm vào từng ô điểm để xem chi tiết: test nào sai, chạy quá thời gian hay lỗi biên dịch – rất hữu ích khi chữa bài cho học sinh.
  • Bấm F12 để xuất kết quả thi (có thể xuất ra Excel để lưu và gửi học sinh).
Bước 6: F9 để chấm, bấm vào ô điểm để xem chi tiết từng test, F12 để xuất kết quả thi.
Hình 9. Bước 6: F9 để chấm, bấm vào ô điểm để xem chi tiết từng test, F12 để xuất kết quả thi.

9. Lỗi thường gặp và cách xử lý

Hiện tượngNguyên nhân thường gặpCách xử lý
Không có bài làm (No submission)Sai tên file hoặc sai đuôi, đặt file trong thư mục conĐổi tên file trùng tên bài, đặt trực tiếp trong thư mục số báo danh
Lỗi biên dịchThiếu trình biên dịch hoặc cấu hình sai đường dẫnKiểm tra lại trình biên dịch trong phần thiết lập; thử biên dịch tay bài đó
Bài Python lỗi khi dùng thư việnBản Python đi kèm cũ (3.3)Cài Python mới, thêm vào PATH rồi cấu hình lại Themis (theo hướng dẫn của tác giả)
Bài Pascal chạy đúng ở nhà nhưng bị lỗi khi chấmBiến chưa khởi tạo, tùy chọn tối ưu của trình biên dịchDặn học sinh luôn khởi tạo biến; có thể chỉnh dòng lệnh biên dịch Free Pascal cho kỳ thi cấp trường

10. Bài có nhiều đáp án đúng?

Với bài có nhiều đáp án đúng (ví dụ in ra một đường đi bất kỳ), thầy cô cần trình chấm ngoài: một chương trình nhỏ tự kiểm tra kết quả của học sinh rồi in ra điểm. Tác giả Themis khuyên dùng trình chấm ngoài cho các bài dạng này. Hướng dẫn viết trình chấm có trên trang Học Tin cùng Thủ khoa.

11. Các lựa chọn khác

  • Chấm online cho cả lớp: ClueOJ, VNOJ, Codeforces – xem Bài 4 của chuyên mục.
  • CMS – hệ thống dùng tại IOI, chạy trên Linux, phù hợp kỳ thi lớn: cms-dev.github.io.
🎓 Quyền lợi khi thầy cô đăng ký khóa học dành cho giáo viên
  • Cập nhật kiến thức liên tục: chuyên đề thuật toán, cấu trúc dữ liệu và xu hướng ra đề HSG mới nhất.
  • Nhận đề thi theo yêu cầu: cần đề kiểm tra hay thi thử cho học sinh, thầy cô được cung cấp đề lấy từ kho đề của khóa học, kèm bộ test và lời giải.
  • Hỗ trợ bài tập lâu dài: gặp bài khó – kể cả bài không có trong danh sách bài tập của khóa – thầy cô vẫn được giải đáp, hỗ trợ trong nhiều năm.
  • Đồng hành bồi dưỡng đội tuyển: góp ý lộ trình, cách chấm bài, tổ chức thi cho học sinh.
📩 Liên hệ Zalo 0767666702 (thầy Nguyễn Việt Nam Sơn) hoặc bấm nút "Đăng ký học" ở đầu trang.

Nguồn tham khảo

Tự học thuật toán: khó ở đâu?
Đọc xong một bài giải là bước đầu. Phần lớn học sinh tự học sẽ gặp những trở ngại sau:
  • Không biết học gì trước, học gì sau, học lan man nên kiến thức bị hổng.
  • Bí bài không ai gỡ, ngồi cả buổi vẫn không ra rồi bỏ cuộc.
  • Code chạy được nhưng không đủ điểm, không biết sai ở đâu, chậm ở đâu.
  • Không có đề thi thử và người chấm, nên không biết mình đang ở mức nào.
  • Dễ nản giữa chừng khi không có ai theo sát.
Học cùng thầy Nam Sơn, các trở ngại đó được gỡ bỏ:
  • Lộ trình 111 buổi video sắp sẵn từ dòng code đầu tiên đến đề HSG thật của các tỉnh.
  • Thầy trực tiếp gỡ bí, chữa bài cho từng em qua nhóm Zalo riêng.
  • Hệ thống chấm bài tự động 24/7 và thi thử HSG hằng tuần để biết chính xác mình đang ở đâu.
  • Đóng học phí một lần, thầy kèm lâu dài: từ thi chuyên Tin đến HSG quốc gia và cả khi lên đại học.

Nhận xét