SCPC1차 D -14
1050.
참고
어떤 값을 비교하기 위해 비교/관계연산자(comparison/relational)를 사용할 수 있다.
비교/관계연산자 == 는
두 개의 값이 같은 경우 참(true)을 나타내는 정수값 1로 계산하고,
다른 경우 거짓(false)를 나타내는 정수값 0으로 계산한다.
비교/관계연산자도 일반적인 사칙연산자처럼 주어진 두 수를 이용해 계산을 수행하고,
그 결과를 1(참), 또는 0(거짓)으로 계산해 주는 연산자이다.
비교/관계연산자는 >, <, >=, <=, ==(같다), !=(다르다) 6개가 있다.
** 수학에서 왼쪽과 오른쪽의 계산 결과가 같음(동치)을 나타내는 기호 = 는
C언어에서 전혀 다른 의미로 사용된다.
a=1 와 같은 표현은 a와 1의 값이 같다는 의미가 아니라
오른쪽의 계산 결과인 1을 왼쪽의 변수 a에 저장하라는 의미이다.
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String [] args) throws IOException{
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
if(a==b){
System.out.println(1);
}else{
System.out.println(0);
}
}
}
1051.
두 정수(a, b)를 입력받아
b가 a보다 크거나 같으면 1을, 그렇지 않으면 0을 출력하는 프로그램을 작성해보자.
참고
어떤 값을 비교하기 위해 비교/관계연산자(comparison/relational)를 사용할 수 있다.
비교/관계연산자는 주어진 2개의 값을 비교하여
그 결과가 참인 경우 참(true)을 나타내는 정수값 1로 계산하고,
거짓인 경우 거짓(false)를 나타내는 정수값 0으로 계산한다.
비교/관계연산자도 일반적인 사칙연산자처럼 주어진 두 수를 이용해 계산을 수행하고,
그 결과를 1(참), 또는 0(거짓)으로 계산해 주는 연산자이다.
비교/관계연산자는 >, <, >=, <=, ==(같다), !=(다르다) 6개가 있다.
>=, <= 연산자는 같음(==)을 포함한다.
따라서 “작다/크다” 또는 "같다”는 의미를 가진다.
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String [] args) throws IOException{
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b =sc.nextInt();
if(b>=a){
System.out.println(1);
}else{
System.out.println(0);
}
}
}
1052.
두 정수(a, b)를 입력받아
a와 b가 서로 다르면 1을, 그렇지 않으면 0을 출력하는 프로그램을 작성해보자.
참고
어떤 값을 비교하기 위해 비교/관계연산자(comparison/relational)를 사용할 수 있다.
비교/관계연산자는 주어진 2개의 값을 비교하여
그 결과가 참인 경우 참(true)을 나타내는 정수값 1로 계산하고,
거짓인 경우 거짓(false)를 나타내는 정수값 0으로 계산한다.
비교/관계연산자도 일반적인 사칙연산자처럼 주어진 두 수를 이용해 계산을 수행하고,
그 결과를 1(참), 또는 0(거짓)으로 계산해 주는 연산자이다.
비교/관계연산자는 >, <, >=, <=, ==(같다), !=(다르다) 6개가 있다.
예시
printf("%d", 123!=123); //비교 연산자 !=의 계산 결과인 0(거짓)이 출력된다.
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String [] args) throws IOException{
Scanner sc = new Scanner(System.in);
int a =sc.nextInt();
int b =sc.nextInt();
if(a != b ){
System.out.println(1);
}else{
System.out.println(0);
}
}
}
1053.
1(true, 참) 또는 0(false, 거짓) 이 입력되었을 때
반대로 출력하는 프로그램을 작성해보자.
참고
C언어에서 비교/관계 연산(==, !=, >, <, >=, <=)이 수행될 때,
0은 거짓(false)으로 인식되고, 0이 아닌 모든 수는 참(true)으로 인식된다.
참 또는 거짓의 논리값을 역(반대)으로 바꾸기 위해서는
논리(logical)연산자 !를 사용할 수 있다.
이러한 논리연산을 NOT 연산이라고도 부르고,
프라임(기호 오른쪽에 따옴표) 이나 바(기호 위에 가로 막대)로 표시하고,
집합 기호로는 c (여집합, complement)를 의미한다. 모두 같은 의미이다.
참, 거짓의 논리값(boolean value)인 불 값을 다루어주는 논리연산자는
!(not), &&(and), ||(or) 이 있다.
** 불 대수(boolean algebra)는 수학자 불이 만들어낸 것으로
참/거짓만 가지는 논리값과 그 연산을 다룬다.
예시
printf("%d", !0); //거짓의 반대, 즉 참인 1로 계산됨
printf("%d", !1); //참의 반대, 즉 거짓인 0으로 계산됨
printf("%d", !999); //참의 반대, 즉 거짓인 0으로 계산됨
어떤 변수 a에, !a 와 같은 논리 연산이 가능하다.
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String [] args) throws IOException{
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if(a==1) {
System.out.println(0);
}else {
System.out.println(1);
}
}
}
1054
두 개의 참(1) 또는 거짓(0)이 입력될 때,
모두 참일 때에만 참을 출력하는 프로그램을 작성해보자.
참고
논리연산자 && 는 주어진 2개의 논리값이 모두 참(1) 일 때에만 1(참)로 계산하고,
그 외의 경우에는 0(거짓) 으로 계산한다.
이러한 논리연산을 AND 연산이라고도 부르고, · 으로 표시하거나 생략하며,
집합 기호로는 ∩(교집합, intersection)을 의미한다. 모두 같은 의미이다.
참, 거짓의 논리값(boolean value)인 불 값을 다루어주는 논리연산자는
!(not), &&(and), ||(or) 이 있다.
** 불 대수(boolean algebra)는 수학자 불이 만들어낸 것으로
참/거짓만 가지는 논리값과 그 연산을 다룬다.
예시
printf("%d", 1&&1); //둘 다 참을 의미하므로 1로 계산되어 출력된다.
import java.io.IOException;
import java.util.Scanner;
public class Main{
public static void main(String [] args) throws IOException{
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b =sc.nextInt();
if(a+b ==2){
System.out.println(1);
}else{
System.out.println(0);
}
}
}
'알고리즘 > SCPC준비' 카테고리의 다른 글
[JAVA] 코드업 1060~ 1064 자바코드 (0) | 2020.08.08 |
---|---|
[JAVA] 코드업 1055~1059 자바코드 (0) | 2020.08.08 |
[JAVA] 코드업 1045 ~ 1049 자바코드 (0) | 2020.08.07 |
[JAVA]코드업 1040~1044 자바 코드 (0) | 2020.08.07 |
[JAVA] 코드업 1035~1039 자바 (0) | 2020.08.07 |