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

[JAVA] CodeUp 1056 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기(설명)

Art Rudy 2021. 7. 30
728x90
반응형

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

 

[기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기(설명)

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

codeup.kr

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

문제 설명

두 가지의 참(1) 또는 거짓(0)이 입력될 때,
참/거짓이 서로 다를 때에만 참을 출력하는 프로그램을 작성해보자.


참고
이러한 논리연산을 XOR(exclusive or, 배타적 논리합)연산이라고도 부른다.
집합의 의미로는 합집합에서 교집합을 뺀 것을 의미한다. 모두 같은 의미이다.

논리연산자는 사칙연산자와 마찬가지로 여러 번 중복해서 사용할 수 있는데,
연산의 순서를 만들어주기 위해 괄호 ( )를 사용해 묶어 주면 된다.

수학에서는 괄호, 중괄호, 대괄호를 사용하지만 C언어에서는 소괄호 ( )만을 사용한다.

예시
printf(“%d”, (a&&!b)||(!a&&b)); //참/거짓이 서로 다를 때에만 1로 계산

입력

1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.

출력

참/거짓이 서로 다를 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.

입력 예시

1 1

출력 예시

0

도움말

 

 

내 답안

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();

    if((a==1 && b==0) || (a==0 && b==1)) {        	
      System.out.print(1);
    }else {        	
      System.out.print(0);
    }
  }
}
728x90
반응형