복습
//어제 연산자 복습 (산술연산자)
//자바 데이터 타입 크게 두가지로 나뉜다.
//1.기본타입 2.참조타입
// 기본타입 -8가지
// 정수형 - byte, short, int, long
// 실수형 - float, double
// 논리형 - boolean
// 문자형 - char
char text = 'A';
System.out.println((char)(text+1));
//산술연산자
// + - * / %
int num1 = 7;
int num2 = 3;
System.out.println(num1+num2);
System.out.println(num1-num2);
System.out.println(num1*num2);
System.out.println(num1/num2);
System.out.println(num1%num2);
}
}
2.
public class Exam02형변환 {
public static void main(String[] args) {
// 자동형변환 -> 작은데이터 타입이 큰 데이터 타입으로 들어가는 현상
// -> 큰데이터에서 작은데이터로는 불가능
byte num1 = 10;
int num2 = num1;
// 강제형변환 -> 큰 데이터 타입에서 작은 데이터 타입으로 변환하는 현상
// 컴파일
// 데이터가 커서 작은곳으로 이동하다가 넘친것 오버플로우
int num3 = 300;
byte num4 = (byte)num3;
System.out.println(num4);
//같은 byte를 가졌다고 하더라도 java에서는 정수형보다 실수형을 더 큰 타입이라고
//생각한다.
int num5 = 30;
float num6 = num5;
float num7 = 100.7f;//f는 앞에(float)을생략한것이다. 형변환
int num8 = (int)num7;
System.out.println(num8);
int num9 = 7;
int num10 = 3;
double num11 = 3.0;
//데이터 타입끼리 연산을 할 시 더 큰 데이터 타입의 연산결과로 나오게 된다.
System.out.println(num9/num10);
System.out.println(num9/num11);
}
}
public class Exam03복합대입연산자 {
public static void main(String[] args) {
//복합대입연산자
//두개의 연산자를 동시에 사용하는 방법
int num1 = 100;
//num1 = num1 + 20;
//num1 += 20;
//num1 = num1 - 20;
//num1 -= 20;
//num1 = num1 * 3;
num1 *= 3;
System.out.println(num1);
}
}
4.
//증감연산자
// 변수의 값을 1증가 시키거나 1감소시키는 연산자
int num = 10;
// ++증가 연산자
// ++변수 -> 1을 먼저 증가시키고 다음 행동을 함
// 변수++ -> 행동을 먼저 하고 1을 나중에 증가시킴
num++;
System.out.println(num);
System.out.println(num);
}
}
//비교연산자
//좌항과 우항의 값을 비교하는것 -> 결과값은 항상 boolaen으로 나옴
int a = 3;
int b = 10;
System.out.println(a>b);
System.out.println(a>=b);
System.out.println(a<b);
System.out.println(a<=b);
System.out.println(a==b);
System.out.println(a!=b);
}
}
//논리연산자
//좌항과 우항의 조건이 포함되는지 알 수 있는 연산자
int num1 = 3;
int num2 = 4;
int num3 = 5;
int num4 = 6;
//AND연산자 그리고 -> &(엔퍼센트) &&(앤드)
//좌항과 우항의 결과값이 둘다 true 결과가 true
//나머지는 다 false
//System.out.println(num1 < num2 && num3 < num4);
//System.out.println(num1 > num2 && num3 < num4);
//OR연산자 또는 -> |(bar) ||(or연산자)
//좌항과 우항 중 둘 중 하나만 true 결과는 true
//둘 다 false라면 결과는 false
//System.out.println(num1>num2 || num3<num4);
//System.out.println(num1>num2 || num3>num4);
//Not 연산자 !
//boolean 값을 반대로 꺼내는 것
System.out.println(!(num1>num2));
}
}
//삼항연산자
//간단한 true, false에 대한 제어가 필요할때
//조건식(결과값이 true,false) ? 값1(true일때) : 값2(false일때);
int num1 = 3;
int num2 = 4;
//num1과 num2를 비교해서 num1이 더크면 "num1이 더 큽니다."
//num2가 더 크면 "num2가 더큽니다."
String result = num1 > num2 ? "num1이 더 큽니다." : "num2가 더 큽니다.";
System.out.println(result);
}
}
//숫자를 입력받아서 홀수인지 짝수인지 판별
Scanner sc = new Scanner(System.in);
System.out.print("정수입력 >> ");
int num = sc.nextInt();
//문제. 입력한 값이 홀수라면 -> 홀수 입니다.
// 짝수라면 -> 짝수 입니다.
int a = num % 2;
String result = a==1 ? "홀수입니다." : "짝수입니다.";
System.out.println(result);
}
}
Scanner sc = new Scanner(System.in);
System.out.print("첫 번째 정수 입력 : ");
int a = sc.nextInt();
System.out.print("두 번째 정수 입력 : ");
int b = sc.nextInt();
int c = a>b ? a-b : b-a;
System.out.println("두 수의 차 : "+c);
}
}
//농구공 박스구하기
Scanner sc = new Scanner(System.in);
System.out.print("농구공의 개수를 입력하세요 : ");
int a = sc.nextInt();
int b = a/5;
int c = a%5 == 0 ? b : b+1;
System.out.println("필요한 상자의 수 :" +c);
}
}