본문 바로가기

홀짝 판별

1. n % 2 == 0

짝수의 수학적 정의는 '2로 나누어 떨어지는 정수'다.

바꿔 말하면 '2로 나눴을 때 나머지가 0인 정수'이며, 이를 식으로 표현하면 위와 같다.

정의에 입각한 식이기 때문에 통상적으로 쓰이는 방법이다.

 

2. n&1 == 0

1의 이진수는 00000001이다. 즉 LSB(Least Significant Bit, 제일 오른쪽 비트)가 1이다.

반면 짝수를 이진수로 나타내면 bbbbbbb0이 된다(b는 임의의 비트). 즉 LSB는 무조건 0이다.

즉 1과 짝수의 LSB는 서로 다를 수밖에 없다.

따라서 (짝수) AND 1은 0이 되고, (홀수) AND 1은 1이 된다.

 

 

$Let\; n\,=\, 13$

$then$

$n\; AND\; 1$

$=\;00001011_{(2)}$

$\;\;\;\;\;00000001_{(2)}$

$--------------$

$\;\;\;\;\;00000001_{(2)}$

 

$Let\; n\,=\, 14$

$then$

$n\; AND\; 1$

$=\;00001110_{(2)}$

$\;\;\;\;\;00000001_{(2)}$

$--------------$

$\;\;\;\;\;00000000_{(2)}$