Error message here!

Hide Error message here!

Forgot your password?

Error message here!

Error message here!

Error message here!

Hide Error message here!

Hide Error message here!

Error message here!

Lost your password? Please enter your email address. You will receive a link to create a new password.

Error message here!

Back to log-in

Close
문제 1058 --[기초-비트단위논리연산] 비트단위로 바꿔 출력하기

1058: [기초-비트단위논리연산] 비트단위로 바꿔 출력하기

시간 제한: 1 Sec  메모리 제한: 128 MB
제출: 9  푼 문제: 4
  

문제 설명

입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자.

입력

정수 한 개가 입력된다.
(-2147483648 ~ +2147483647)

출력

비트 단위로 1->0, 0->1로 바꾼후 그 값을 10진수로 출력한다.

입력 예시

4

출력 예시

-5

도움말

비트단위(bitwise) 연산자 ~(tilde, 틸드라고 읽는다.)를 붙이면 된다.



** 비트단위(bitwise) 연산자는, 

~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), <<(bitwise left shift), >>(bitwise right shift) 가 있다.



^:(circumflex 써컴플렉스, caret 캐럿)





예를 들어 1(32비트 2진수로 표현하면 00000000 00000000 00000000 0000001) 이 입력되었을 때, 

~1은 -2(11111111 11111111 11111111 11111110) 가 된다.



예시

int a=1;

printf("%d", ~a); //-2가 출력된다.

게시판


로그인을 하셔야 글을 열람 하실 수 있습니다.

출처

정보컴퓨터교사 연구회/카페 (기초100제 v0.0)