[C언어 코드업 문제풀이] CodeUp 1057 : [기초-논리연산] 참/거짓이 서로 같을 때에만 참 출력하기
ET의 공부/C언어 연습문제[ 코드업 ]2019. 12. 25. 10:12
코드업 1057 참/거짓이 서로 같을 때에만 참 출력하기 문제 풀이 해답입니다.
1. 문제 설명
두 개의 참(1) 또는 거짓(0)이 입력될 때,
참/거짓이 서로 같을 때에만 참이 계산되는 프로그램을 작성해보자.
2. 입력
1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다.
3. 출력
참/거짓이 서로 같을 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다.
4. 입력 예시
0 0
5. 출력 예시
1
6. 문제 풀이
#include <stdio.h>
int main (void)
{
int num1,num2,result;
scanf("%d %d", &num1, &num2);
result = !(num1 ^ num2);
printf("%d",result);
return 0;
}
|
참/거짓이 서로 같을 때에만 참 출력하는 문제입니다.
우리는 이전에 서로 다를때에만 참을 출력하는 XOR를 배웠었습니다. 그럼 이번 문제가 요구하는 조건은
이전문제의 정 반대가 되겠죠.
그러면 이전 결과에 NOT(!) 연산을 해주면 됩니다.
result = !(num1 ^ num2);
!( 값 ^ 값 ) 와 같이 XOR 연산에 !(NOT)을 취해주면 풀 수 있습니다.
'ET의 공부 > C언어 연습문제[ 코드업 ]' 카테고리의 다른 글
[C언어 코드업 문제풀이] CodeUp 1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명) (0) | 2019.12.25 |
---|---|
[C언어 코드업 문제풀이] CodeUp 1058 : [기초-논리연산] 둘 다 거짓일 경우만 참 출력하기 (0) | 2019.12.25 |
[C언어 코드업 문제풀이] CodeUp 1056 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기(설명) (0) | 2019.12.24 |
[C언어 코드업 문제풀이] CodeUp 1055 : [기초-논리연산] 하나라도 참이면 참 출력하기(설명) (0) | 2019.12.24 |
[C언어 코드업 문제풀이] CodeUp 1054 : [기초-논리연산] 둘 다 참일 경우만 참 출력하기(설명) (0) | 2019.12.24 |
댓글()