Menu
CoddyTech

Toán tử modulo

Thuộc phần Kiến thức nền tảng trong hành trình C# của Coddy. Bài học 16 trên 69.

Toán tử modulo % cho biết số dư của phép chia. Trong C#, toán tử này có cú pháp đơn giản:

result = dividend % divisor;
  • dividend: Số bị chia.
  • divisor: Số chia.
  • result: Số dư của phép chia.

Ví dụ:

result = 10 % 3;

Ở đây, 10 được chia cho 3. 3 chia 10 được ba lần, dư 1. Vậy result sẽ bằng 1.

Toán tử modulo thường được dùng để kiểm tra một số là chẵn hay lẻ:

  • Nếu một số chẵn, chia số đó cho 2 sẽ có số dư bằng 0.
  • Nếu một số lẻ, chia số đó cho 2 sẽ có số dư bằng 1, hoặc -1 nếu số đó âm (số dư mang dấu của số bị chia). Để kiểm tra một số lẻ, hãy dùng number % 2 != 0.

Khi dùng phép chia lấy dư với số dấu phẩy động (số thực double), phép tính hoạt động giống như với số nguyên và cho kết quả là một số double. Ví dụ:

double result = 5.2 % 2.0;
// result xấp xỉ 1.2

Cách hoạt động như sau: 2.0 chia vào 5.2 được hai lần (4.0), phần dư là 1.2 (5.2 - 4.0 = 1.2). Kiểu double không thể lưu chính xác 5.2, vì vậy result thực sự chứa 1.2000000000000002, rất gần với 1.2 nhưng không bằng nó.

Một ví dụ khác:

double result = 7.8 % 3.5;
// result xấp xỉ 0.8
challenge icon

Thử thách

Người mới

Viết code khởi tạo ba biến a (int), b (double) và c (int) lần lượt với các giá trị 9, 2.6 và 11.

Sau đó, khởi tạo các biến sau:

  • d (int) sẽ lưu kết quả phép chia lấy dư của a cho 2 
  • e (int) sẽ lưu kết quả phép chia lấy dư của a cho 3
  • f (double) sẽ lưu kết quả phép chia lấy dư của b cho 1.5
  • g (double) sẽ lưu kết quả phép chia lấy dư của b cho 3.9
  • h (int) sẽ lưu kết quả phép chia lấy dư của c cho 10

Xem kết quả và quan sát cách số bị chia và số chia khác nhau ảnh hưởng đến kết quả.

Tự làm thử

        // Viết code của bạn bên dưới
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch C# online