Toán tử modulo
Thuộc phần Kiến thức nền tảng trong hành trình Ruby của Coddy. Bài học 12 trên 88.
Toán tử modulo (%) trả về phần dư sau phép chia. Khi bạn chia một số cho một số khác, modulo cho bạn biết phần còn lại thay vì thương.
Ví dụ, khi chia 17 cho 5, bạn được 3 và dư 2. Toán tử modulo lấy phần dư đó:
remainder = 17 % 5 # 2
leftover = 10 % 3 # 1
even_check = 8 % 2 # 0Một trong những cách dùng phép modulo phổ biến nhất là kiểm tra một số là chẵn hay lẻ. Nếu một số chia cho 2 có số dư là 0, thì số đó là số chẵn. Nếu số dư là 1, thì số đó là số lẻ:
14 % 2 # 0 (số chẵn)
9 % 2 # 1 (số lẻ)Phép modulo cũng hữu ích để kiểm tra tính chia hết. Khi kết quả bằng 0, điều đó có nghĩa là số thứ nhất chia hết cho số thứ hai. Điều này đặc biệt hữu ích khi bạn cần xác định một số có phải là bội số của một số khác hay không.
Thử thách
DễBạn được cung cấp các biến sau:
total_items = 23
items_per_box = 5Dùng toán tử modulo để tính và hiển thị các giá trị sau, mỗi giá trị trên một dòng riêng:
- Số vật phẩm không đủ để xếp đầy một hộp (số dư khi chia
total_itemschoitems_per_box) - Kết quả của
17 % 4 - Kết quả của
100 % 10 - Kết quả của
15 % 2(để kiểm tra xem 15 có phải số lẻ không) - Kết quả của
24 % 6(để kiểm tra xem 24 có chia hết cho 6 không)
Tự làm thử
# Các biến (variable) đã cho
total_items = 23
items_per_box = 5
# TODO: Viết code bên dưới
# Dùng toán tử (operator) chia lấy dư (%) để tính và in ra:
# 1. Số dư khi chia total_items cho items_per_box
# 2. Kết quả của 17 % 4
# 3. Kết quả của 100 % 10
# 4. Kết quả của 15 % 2
# 5. Kết quả của 24 % 6Bà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
4Toán tử phần 2
Toán tử logic phần 1Toán tử logic phần 2Ôn tập: logic đơn giảnToán tử logic phần 3Toán tử logic phần 42Biến và kiểu dữ liệu
Số và biếnKiểu dữ liệu chuỗiKiểu dữ liệu BooleanKiểu dữ liệu SymbolKiểm tra kiểu dữ liệuQuy ước đặt tênÔn tập: tạo biến8Vòng lặp
Vòng lặp for với khoảng giá trịVòng lặp whileThoátTiếp tụcÔn tập: giai thừaVòng lặp timesVòng lặp untilVòng lặp lồng nhauÔn tập: đầu vào động3Toán tử phần 1
Toán tử số họcToán tử moduloPhép tính số học rút gọnÔn tập: Toán cơ bảnToán tử so sánh6Nhập xuất cơ bản
In ra bằng putsIn ra bằng print và pIn ra bằng biếnNhập dữ liệu bằng getsPhương thức chompChuyển đổi kiểu dữ liệuÔn tập: Tính tuổiÔn tập: Đúng hay sai9Phương thức
Định nghĩa phương thứcTham số phương thứcGiá trị trả vềÔn tập: phương thức SigmaÔn tập: phương thức xác thựcGiá trị tham số mặc định15Theo dõi chi tiêu hằng ngày
Tổng quan dự ánThoát chương trìnhTự luyện tập: Trình biên dịch Ruby online