58. 콘솔에서 두 개의 정수를 입력받고, 비트단위로 xor 연산을 한 값을 출력하라.

입력 : 1line 으로 2개의 정수가 공백을 두고 입력

입력 범위: -2147483648 ~ 2147483647​

입력 예시

3 5

출력 예시

6

JAVA 

import java.util.Scanner;

public class XOR {

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
	    int value0 = scan.nextInt();
	    int value1 = scan.nextInt();
		scan.close();
		
		System.out.println(value0 ^ value1);
    }
}

 

 

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    let values = line!.split(separator: " ")
    if values.count == 2 {
        if let value0 = Int(values[0]), let value1 = Int(values[1]) {
            print(value0^value1)
        }
    }
}

 

이전 소스에서 연산자만 바꾸었습니다.

그냥 적자면 xor은

두 비트가 하나만 1 일때 1이 나오는 연산입니다. ^기호를 쓰면 불편해 ㅁ로 대체합니다.

0 ㅁ 0 = 0

0 ㅁ 1 = 1

1 ㅁ 0 = 1

1 ㅁ 1 = 0

다양하게 편하게 보고싶으시면 xor 진리표를 검색하시면 빠릅니다.

계속 논리게이트 관련 문제만 나오네요.

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

 

 

 

 

/////

옴기면서 이전 포스팅에 자바 소스가 누락되어있는걸 확인해서 지금 넣었습니다.

하는 프로젝트 자체는 스위프트로 해당 기초 문제 풀기이기에 그닥 상관은 없습니다만 간단한 문제라 바로 넣어봤습니다.

+ Recent posts