알고리즘/[코드업] 기초 100제

[JAVA] CodeUp 1061 : [기초-비트단위논리연산] 비트단위로 OR 하여 출력하기(설명)

Art Rudy 2021. 7. 30. 12:28
728x90
반응형

https://codeup.kr/problem.php?id=1061 

 

[기초-비트단위논리연산] 비트단위로 OR 하여 출력하기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용

codeup.kr

문제 분류 : 기초2. 입출력문 및 연산자

문제 설명

입력된 정수 두 개를 비트단위로 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개의 정수가 공백을 두고 입력된다.
-2147483648 ~ +2147483647

출력

두 정수를 비트단위(bitwise)로 or 계산을 수행한 결과를 10진수로 출력한다.

입력 예시

3 5

출력 예시

7

도움말

 

 

내 답안

import java.util.Scanner;
 
public class Main {

  public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);
    int a = sc.nextInt();
    int b = sc.nextInt();

    System.out.printf("%d", a | b);

  }
}
728x90
반응형