[C언어 코드업 문제풀이] CodeUp 1061 : [기초-비트단위논리연산] 비트단위로 OR 하여 출력하기(설명)
코드업 1061번 비트단위로 OR 하여 출력하기 문제 풀이 해답입니다.
1. 문제 설명
입력된 정수 두 개를 비트단위로 or 연산한 후 그 결과를 정수로 출력해보자.
비트단위(bitwise) 연산자 |(or, vertical bar, 버티컬바)를 사용하면 된다.
** | 은 파이프(pipe)연산자라고도 불리는 경우가 있다.
** 비트단위(bitwise) 연산자는,
~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor),
<<(bitwise left shift), >>(bitwise right shift)
가 있다.
예를 들어 3과 5가 입력되었을 때를 살펴보면
3 : 00000000 00000000 00000000 00000011
5 : 00000000 00000000 00000000 00000101
3 | 5 : 00000000 00000000 00000000 00000111
이 된다.
비트단위 or 연산은 둘 중 하나라도 1인 자리를 1로 만들어주는 것과 같다.
이러한 비트단위 연산은 빠른 계산이 필요한 그래픽처리에서도 효과적으로 사용된다.
2. 입력
2개의 정수가 공백을 두고 입력된다.
-2147483648 ~ +2147483647
3. 출력
두 정수를 비트단위(bitwise)로 or 계산을 수행한 결과를 10진수로 출력한다.
4. 입력 예시
3 5
5. 출력 예시
7
6. 문제 풀이
#include <stdio.h>
int main (void)
{
int num1,num2,result;
scanf("%d %d", &num1 , &num2);
result = num1 | num2;
printf("%d",result);
return 0;
}
|
비트 OR 연산해주는 문제입니다.
OR 연산은 | 를 이용해 연산해줍니다. 논리연산 OR || 와 혼동하면 안됩니다.
OR 연산 |는 거짓 또는 참일때 참을 반환합니다.
예를들어 0100 0001 이란 각 4,1 이란 비트를 OR연산한다면
0100 | 0001 ---> 0101 즉 5가 됩니다.
'ET의 공부 > C언어 연습문제[ 코드업 ]' 카테고리의 다른 글
[C언어 코드업 문제풀이] CodeUp 1063 : [기초-삼항연산] 두 정수 입력받아 큰 수 출력하기(설명) (0) | 2019.12.25 |
---|---|
[C언어 코드업 문제풀이] CodeUp 1062 : [기초-비트단위논리연산] 비트단위로 XOR 하여 출력하기(설명) (0) | 2019.12.25 |
[C언어 코드업 문제풀이] CodeUp 1060 : [기초-비트단위논리연산] 비트단위로 AND 하여 출력하기(설명) (0) | 2019.12.25 |
[C언어 코드업 문제풀이] CodeUp 1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명) (0) | 2019.12.25 |
[C언어 코드업 문제풀이] CodeUp 1058 : [기초-논리연산] 둘 다 거짓일 경우만 참 출력하기 (0) | 2019.12.25 |