입력된 정수 두 개를 비트단위로 and 연산한 후 그 결과를 정수로 출력해보자.
비트단위(bitwise)연산자 &를 사용하면 된다.(and, ampersand, 앰퍼센드라고 읽는다.)
** 비트단위(bitwise) 연산자는,
~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor),
<<(bitwise left shift), >>(bitwise right shift)
가 있다.
예를 들어 3과 5가 입력되었을 때를 살펴보면
3 : 00000000 00000000 00000000 00000011
5 : 00000000 00000000 00000000 00000101
3 & 5:00000000 00000000 00000000 00000001
이 된다.
출처: CodeUp 기초 100제 6060번 첨부이미지
3 5
1
a, b = input().split()
c = int(a)
d = int(b)
print(c&d)
n1, n2 = input().split()
result = int(n1) & int(n2)
print(result)
input(): 프롬프트를 띄워서 사용자의 입력 받을 수 있게 해준다.
(단, 입력 받은 것은 문자열로 저장된다. print(type()))으로 type() 괄호 안에 변수를 넣고 찍으면 정수인지, 문자열인지, 무슨 타입인지 확일 할 수 있다!)
int(): 위의 input()에서 말했듯이 input으로 받은 값은 문자열로 저장된다.
산술을 하기 위해, 문자열을 정수로 변환시켜주는 int()를 써서 변환시켜준다.
&(엠퍼샌드, bitwise and): 10진수를 컴퓨터 언어인 2진수 방식의 and를 표현해준다.
a and b: a와 b가 같아야 True
1011
&1001
---------
1001
위 예시와 같이 두 2진수의 값 중 1(True)이 같은 부분을 표현해준다.
print(): 괄호 안의 내용을 출력!