Python 기초 100제 | 6046번


Python 기초 100제 | 6046번

문제 설명 정수 1개를 입력받아 2배 곱해 출력해보자. 참고 *2 를 계산한 값을 출력해도 되지만, 정수를 2배로 곱하거나 나누어 계산해 주는 비트단위시프트연산자 <<, >>를 이용할 수 있다. 컴퓨터 내부에는 2진수 형태로 값들이 저장되기 때문에, 2진수 형태로 저장되어 있는 값들을 왼쪽(<<)이나 오른쪽(>>)으로 지정한 비트 수만큼 밀어주면 2배씩 늘어나거나 1/2로 줄어드는데, 왼쪽 비트시프트(<<)가 될 때에는 오른쪽에 0이 주어진 개수만큼 추가되고, 오른쪽 비트시프트(>>)가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 개수만큼 추가되고, 가장 오른쪽에 있는 1비트는 사라진다. 예시 n = 10 print(n<<1) #10을 2배 한 값인 20 이 출력된다. print(n>>1) #10을 반으로 나눈 값인 5 가 출력된다. print(n<<2) #10을 4배 한 값인 40 이 출력된다. print(n>>2) #10을 반으로 나눈 후 다시 ...


#6046 #Python #코드업 #파이썬

원문링크 : Python 기초 100제 | 6046번