Khoá học Python cơ bản
Bài học: Phép toán số học, chia nguyên và chia dư
🏆 +100 XP tiềm năng Thoát

Phép toán số học, chia nguyên và chia dư

2 khối nội dung 45 phút học tập MỞ BẢNG TRẮNG

Phép toán số học, chia nguyên và chia dư

Nội dung bài học

1. Kiến thức chuyên sâu dành cho học sinh Tiểu học

Python cung cấp 7 phép toán số học. Trong đó, bộ đôi Chia lấy phần nguyên (//)Chia lấy phần dư (%) là nền tảng cốt lõi của mọi bài thi Tin học trẻ:

Phép chia: A : B  (Ví dụ: 17 chia cho 5)
17 = 5 x 3 + 2
       │     │
       │     └─► 17 % 5  = 2 (Số dư - Modulo)
       └───────► 17 // 5 = 3 (Thương nguyên - Floor Division)

A. Phép chia thực (/)

  • Ký hiệu một dấu gạch chéo /.
  • Đặc điểm sống còn: Kết quả luôn luôn là số thực (float), kể cả khi chia hết. Ví dụ: 8 / 2 cho ra 4.0 chứ không phải 4. Nếu đề bài yêu cầu in ra số nguyên, dùng / sẽ bị trừ điểm!

B. Phép chia lấy phần nguyên (//)

  • Ký hiệu hai dấu gạch chéo liền nhau //.
  • Ý nghĩa: Trả lời câu hỏi "Có thể chia được trọn vẹn bao nhiêu phần bằng nhau?".
  • Bỏ hoàn toàn phần thập phân, chỉ giữ lại số nguyên: 19 // 4 = 4 (vì $19 : 4 = 4.75$, lấy phần nguyên là $4$).

C. Phép chia lấy phần dư (%)

  • Ký hiệu dấu phần trăm %.
  • Ý nghĩa: Trả lời câu hỏi "Sau khi chia đều hết mức có thể, còn thừa ra bao nhiêu?".
  • 19 % 4 = 3 (vì $4 \times 4 = 16$, còn dư $19 - 16 = 3$).

D. Định lý chia có dư Toán Tiểu học trong Python

$$\mathbf{A} = (\mathbf{A} // \mathbf{B}) \times \mathbf{B} + (\mathbf{A} \% \mathbf{B})$$

E. Thứ tự ưu tiên tính toán (Quy tắc PEMDAS)

$$ \text{Ngoặc } () \longrightarrow \text{Lũy thừa } ** \longrightarrow \text{Nhân, Chia } (*, /, //, \%) \longrightarrow \text{Cộng, Trừ } (+, -)$$ Lưu ý: Các phép toán cùng cấp độ được thực hiện lần lượt từ Trái sang Phải.

2. Sổ tay 6 kỹ thuật ứng dụng thực chiến của //%

Kỹ thuật 1: Kiểm tra tính chẵn lẻ

  • Số chẵn là số chia hết cho 2 (dư 0): n % 2 == 0.
  • Số lẻ là số chia cho 2 dư 1: n % 2 == 1 (hoặc n % 2 != 0).

Kỹ thuật 2: Kiểm tra tính chia hết

  • Số $A$ là bội số của $B$ (hay $A$ chia hết cho $B$): A % B == 0.

Kỹ thuật 3: Bóc tách chữ số hàng đơn vị và hàng chục

  • Lấy chữ số hàng đơn vị (chữ số cuối cùng): don_vi = n % 10.
  • Gọt bỏ chữ số hàng đơn vị: tam = n // 10.
  • Lấy chữ số hàng chục của số $N$: chuc = (n // 10) % 10.

Kỹ thuật 4: Kỹ thuật làm tròn lên (Ceiling Division)

  • Bài toán: Có $N$ học sinh, cần thuê xe chở học sinh, mỗi xe chở được $K$ bạn. Cần ít nhất bao nhiêu xe để không bạn nào bị bỏ lại?
  • Nếu dùng N // K, với $N = 25, K = 10$ sẽ ra $2$ (thiếu 1 xe chở 5 bạn còn lại!).
  • Công thức làm tròn lên chuẩn thi đấu: $$\mathbf{so\_xe = (N + K - 1) // K}$$ Kiểm tra: $(25 + 10 - 1) // 10 = 34 // 10 = 3$ xe (Tuyệt đối chính xác!).

Kỹ thuật 5: Bài toán chu kỳ vòng tròn (Đồng hồ, Vòng chạy)

  • Một vòng có $M$ trạng thái (từ 0 đến $M-1$). Di chuyển thêm $K$ bước: $$\mathbf{vi\_tri\_moi = (vi\_tri\_cu + K) \% M}$$

  • Đồng hồ 12 giờ: Sau $K$ giờ nữa kim chỉ số mấy? gio_moi = (gio_hien_tai + K) % 12. Nếu gio_moi == 0 thì kết quả là 12. Hoặc mẹo 1 dòng: (gio_hien_tai + K - 1) % 12 + 1.

Kỹ thuật 6: Đổi số thứ tự $K$ sang tọa độ (Hàng, Cột) trên bàn cờ

  • Một bảng ô vuông có chiều rộng mỗi hàng là $W$ ô. Ô thứ $K$ ($K$ tính từ 1):
  • idx = K - 1 (Chuyển về mốc 0)
  • hang = (idx // W) + 1
  • cot = (idx % W) + 1

3. Bảng bẫy lỗi phòng thi thường gặp

Code sai Báo lỗi / Hiện tượng Nguyên nhân Cách sửa đúng
a / b In ra 3.0 thay vì 3 Dùng chia thực / Dùng chia nguyên a // b
a % 0 hoặc a // 0 ZeroDivisionError Mẫu số chia bằng 0 Đảm bảo mẫu số $> 0$
a ^ b Kết quả sai hoàn toàn ^ là phép XOR bit, không phải mũ Viết a ** b
a x b SyntaxError Dùng chữ x làm dấu nhân Viết a * b
1
A
B
C
D
2
A
B
C
D
3
A
B
C
D
4
A
B
C
D
5
A
B
C
D
6
A
B
C
D
7
A
B
C
D
8
A
B
C
D
9
A
B
C
D
10
A
B
C
D
11
A
B
C
D
12
A
B
C
D
13
A
B
C
D
14
A
B
C
D
15
A
B
C
D
16
A
B
C
D
17
A
B
C
D
18
A
B
C
D

Bài tập lập trình vận dụng

16 Bài tập thực hành

Nhấn vào nút "Làm bài" bên dưới để mở giao diện làm bài trực tuyến (Online Judge) và thực hiện viết mã nguồn cho bài tập này.

Chia Đều Bánh Quy
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Nhân Đôi Lũy Thừa
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Số Kẹo Còn Thừa
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Đổi Giờ Ra Phút Giây
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Bóng Đèn Viền Biển Hiệu
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Trồng Cây Đại Lộ
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Vòng Chạy Điền Kinh
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Kim Đồng Hồ 12 Giờ
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Tách Chữ Số Tận Cùng
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Đảo Ngược Số 2 Chữ Số
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Xe Buýt Chở Học Sinh
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Bàn Cờ Ca-rô Vô Tận
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Lũy Thừa Cầu Thang
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Đổi Phút Ra Giờ Phút
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Giá Trị Biểu Thức PEMDAS
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài
Đu Quay Vòng Tròn
Độ khó: mediumĐiểm tối đa: 100.0 điểm
Làm bài