본문 바로가기
파이썬 코드업 기초 100제

파이썬 코드업 기초 6 - 비트 시프트 연산

by chanfficial 2022. 1. 22.

47. 정수 1개를 입력받아 2배 곱해 출력해보자.

Tip :

  • 곱하기 2를 해도 되지만 이진수를 왼쪽으로 한 번씩 이동시켜주면 기존 값의 두 배가 된다.
    • ex) 5(101) => 10(1010), 7(111) => 14(1110)

1) 정답

mul = int(input())
print( mul<<1 )

2) 내가 쓴 답

a = int(input())
print(a * 2)

- 이진수를 왼쪽으로 한 번씩 이동시키는 방법을 몰라서(시프트 연산자..?) 입력받은 정수에 2를 곱하여 출력하게 했다.

 

 

48. 정수 2개(a, b)를 입력받아 a를 2(b 제곱)배 곱한 값으로 출력해보자. ( a * 2(b 제곱) )

1) 정답

a, b = map(int, input().split())
print(a << b)

2) Tip을 안보고 쓴 답

a, b = map(int, input().split())
print(a * (2 ** b))

- a에 2의 b제곱을 곱한 값을 출력해야 하므로 거듭제곱을 구하는 '**' 연산자를 사용해서 a에 2의 b제곱을 곱한 값을 출력하게 했다.