728x90
반응형
import java.util.Scanner;
public class E_Logical {
//논리 연산자
// - 두 개의 논리 값을 비교하는 연산자
// && (AND) -(앰퍼센트) : 그리고, ~이고, ~면서
// || (OR) - (버티칼 바) : 또는, ~거나
public void method1() {
// 입력받은 숫자가 1이상 이고, 100미만 인 경우 true;
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력 : ");
int input = sc.nextInt();
boolean isTrue = (input >= 1) && (input < 100);
System.out.println("범위 안에 값이 맞습니까? " + isTrue); // 1 ~ 99 = true , 그 외 정수는 false.
}
public void method2() {
// 입력받은 문자(한 글자)가 영어 대문자인지 확인하기.
Scanner sc = new Scanner(System.in);
// 문자 하나 입력받기
System.out.print("문자 하나 입력 : ");
char input = sc.nextLine().charAt(0);
boolean isTrue = (input >= 'A') && (input <= 'z');
System.out.println("범위 안에 값이 맞습니까? " + isTrue);
}
public void method3() {
// 논리A && 논리B
// --> 논리 A가 false면,뒤를 생각 안함
// --> 논리 B의 식을 실행하지 말아라
// 논리A || 논리B
// --> 논리 A가 true이면, 뒤를 생각 안함
// --> 논리B의 식을 실행하지 말아라
int num = 10;
boolean bool = false && (++num > 0); // Dead Code
System.out.println("num : " + num); //10
bool = true && (++num < 0);
System.out.println("num : " + num); //11
bool = true || (++num < 0); // Dead Code
System.out.println("num : " + num); // 11
bool = false || (++num > 0);
System.out.println("num : " + num); //12
////////////////////////////////////////////////////
// 증감 + 산술 + 비교 + 논리
int a = 2;
int b = 3;
boolean c = a > b;
boolean d = ++a <= b++;
System.out.println("a : " +a); //3
System.out.println("b : " +b); //4
System.out.println("c : " +c); //false
System.out.println("d : " +d); //true
System.out.println();
System.out.println("!c : " + !c); //true
System.out.println("c != d : " + (c != d)); //true
System.out.println();
System.out.println("(a % b) == 1 : " + ((a % b) == 1)); //false
System.out.println("(a == 3) && (b == 4) : " + ((a == 3) && (b == 4))); // true
System.out.println("!d || (a-b) > 0 : " + (!d || (a-b) > 0)); // false
System.out.println();
System.out.println("!(c == d) && ((a * b == 10) || ( b % 2 == 0)) : "
+ (!(c == d) && ((a * b == 10) || ( b % 2 == 0))));
// true (괄호 먼저 연산 a*b==10 || b % 2 ==0)
// true && false || true
// true && true
}
}
728x90
반응형