[1] 코드업 파이썬 기초 100제
100제 59번째 문제
[2] 문제
입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자.
비트단위(bitwise)연산자 ~ 를 붙이면 된다.(~ : tilde, 틸드라고 읽는다.)
** 비트단위(bitwise) 연산자는,
~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor),
<<(bitwise left shift), >>(bitwise right shift)
가 있다.
예를 들어 1이 입력되었을 때 저장되는 1을 32비트 2진수로 표현하면
00000000 00000000 00000000 00000001 이고,
~1은 11111111 11111111 11111111 11111110 가 되는데 이는 -2를 의미한다.
1. 예시
a = 1
print(~a) #-2가 출력된다.
2. 참고
컴퓨터에 저장되는 모든 데이터들은 2진수 형태로 바뀌어 저장된다.
0과 1로만 구성되는 비트단위들로 변환되어 저장되는데,
양의 정수는 2진수 형태로 바뀌어 저장되고, 음의 정수는 "2의 보수 표현"방법으로 저장된다.
3. 입력
정수 1개가 입력된다.
-2147483648 ~ +2147483647
4. 출력
비트 단위로 1 -> 0, 0 -> 1로 바꾼 후 그 값을 10진수로 출력한다.
https://codeup.kr/problem.php?id=6059
[3] 정답
1. 해설 미포함
a = input()
a = int(a)
print(~a)
2. 해설 포함
a = input()
# 값을 입력받아 변수 a에 저장한다.
a = int(a)
# 변수 a에 저장된 값을 정수형으로 변환 후 다시 변수 a에 저장한다.
print(~a)
# 변수 a에 저장된 값을 2비트로 변환후 그 값을 반전시킨후 다시 10진수로 출력한다.
input 함수는 값을 입력받는 함수이다.
int 함수는 변수에 저장된 값을 int(정수형)으로 변환한 후 출력하는 함수이다.
~ 비트 연산자는 비트단위로 참/거짓을 반전시키는 연산자이다.
비트연산자의 종류로는 ~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), <<(bitwise left shift), >>(bitwise right shift)가 있다.
print 함수는 값을 출력하는 함수이다.
'프로그래밍 > 코드업 파이썬 기초 100제' 카테고리의 다른 글
코드업 파이썬 기초 100제 6061번(100제 61번째 문제) (0) | 2023.02.01 |
---|---|
코드업 파이썬 기초 100제 6060번(100제 60번째 문제) (0) | 2023.02.01 |
코드업 파이썬 기초 100제 6058번(100제 58번째 문제) (0) | 2023.02.01 |
코드업 파이썬 기초 100제 6057번(100제 57번째 문제) (0) | 2023.02.01 |
코드업 파이썬 기초 100제 6056번(100제 56번째 문제) (0) | 2023.01.31 |