쓸만한 주저리

[ASP] 1,2,4,8을 이용한 값 비교

봄돌73 2006. 6. 30. 15:06
1일 때는 ㄱ을
2일 때는 ㄴ을
4일 때는 ㄷ을
8일 때는 ㄹ을 표시해야 하며,
3, 5, 6, 7일 때는 그 합에 해당하는 모든 숫자(3일 경우 1, 2)에 해당하는 기호를 표시해야 한다.

이럴 때
if 값 and 1 then response.write "ㄱ"
if 값 and 2 then response.write "ㄴ"
if 값 and 4 then response.write "ㄷ"
if 값 and 8 then response.write "ㄹ"

이렇게 하면 된다.

1=0001
2=0010
3=0011
4=0100
5=0101
6=0110
7=0111
8=1000

이것을 and 비교 연산을 하게 되면
각 자리에 같은 숫자가 있을 경우 참이 된다.
1과 3은 0001이 같아서 1과 참이 된다.
2와 6은 0010 부분이 같다.
이런 식으로 낮은 숫자와 높은 숫자의 일부가 같아서 참이 된다.
1, 2, 4, 8에서만 해당하는 것 같다.