Hầu hết các toán tử modulo %
được sử dụng để kiểm tra với số chẵn hoặc lẻ.Thử nghiệm với số lẻ
Bây giờ câu hỏi của tôi là, liệu có bất kỳ kiểm tra vấn đề đối với một số lẻ sử dụng toán tử AND, vì nó cảm thấy thử nghiệm nhiều tự nhiên hơn cho dù các bit ngoài cùng bên phải là 1
hoặc 0
hơn là làm một tấm séc modulo chống 2
Và khi chuyển đổi 32 bit không thay đổi bit ngoài cùng bên phải.
Cả
(1 + Math.pow(2,52)) & 1 //1
và
(1 + Math.pow(2,52)) % 2 //1
mang lại kết quả tương tự.
Có lý do nào để thích toán tử modulo hơn bitwise không?
Edit: Câu hỏi này chỉ chiếm giá trị mà rơi vào phạm vi chính xác 64bit như chỉ số chẵn có thể được biểu diễn chính xác trên 2^53 và do đó cả hai toán hạng thất bại (9007199254740993 % 2 //0)
Modulo được sử dụng để tìm phần còn lại của bộ phận. Thật trùng hợp, nó có thể được sử dụng như một kiểm tra chẵn lẻ. – Shark
Câu hỏi hay! – Pointy
@Pointy Thanks =) – C5H8NNaO4