6046 : [기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기(설명)(py)
입력
정수 한 개가 입력된다.
단, -1073741824 ~ +1073741823
출력
2배 곱한 정수를 출력한다.
입력 예시
1024
출력 예시
2048
[내 풀이]
a = int(input())
print(a*2)
[모범 답안]
n = int(input())
print(n<<1)
[추가 설명]
더보기
컴퓨터 내부에는 2진수 형태로 값들이 저장되기 때문에,
2진수 형태로 저장되어 있는 값들을 왼쪽(<<)이나 오른쪽(>>)으로
지정한 비트 수만큼 밀어주면 2배씩 늘어나거나 1/2로 줄어드는데,
왼쪽 비트시프트(<<)가 될 때에는 오른쪽에 0이 주어진 개수만큼 추가되고,
오른쪽 비트시프트(>>)가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 개수만큼 추가되고,
가장 오른쪽에 있는 1비트는 사라진다.
2진수 형태로 저장되어 있는 값들을 왼쪽(<<)이나 오른쪽(>>)으로
지정한 비트 수만큼 밀어주면 2배씩 늘어나거나 1/2로 줄어드는데,
왼쪽 비트시프트(<<)가 될 때에는 오른쪽에 0이 주어진 개수만큼 추가되고,
오른쪽 비트시프트(>>)가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 개수만큼 추가되고,
가장 오른쪽에 있는 1비트는 사라진다.
'자료구조 & 알고리즘 > CodeUp Python 기초 100제' 카테고리의 다른 글
[CodeUp Python 기초 100제] # 48번_정수 2개 입력받아 비교하기1 (0) | 2022.04.18 |
---|---|
[CodeUp Python 기초 100제] # 47번_2의 거듭제곱 배로 곱해 출력하기 (0) | 2022.04.18 |
[CodeUp Python 기초 100제] # 45번_정수 3개 입력받아 합과 평균 출력하기 (0) | 2022.04.18 |
[CodeUp Python 기초 100제] # 44번_정수 2개 입력받아 자동 계산하기 (0) | 2022.04.16 |
[CodeUp Python 기초 100제] # 43번_실수 2개 입력받아 나눈 결과 계산하기 (0) | 2022.04.16 |
댓글