반응형
👇 공부한 자료들의 실제 소스파일들을 기록해논 공간입니다 👇
실습 - 자료형과 캐스팅(형변환)
public static void main(String[] args) {
int a = 10;
int b = 20;
int c = a + b;
System.out.println(c); // c 변수 값을 출력하라 의미 외에는 어떤 설명을 할 수 없는것을 유의
System.out.println(c+20); // c 변수 값을 값에 정수 20을 연산하여 출력한다, c의 값은 변하지 않는다 . 출력만함
System.out.println(b/a); // b 변수 값에 a 변수 값을 나누는 산술 연산의 값을 출력한다.
System.out.println(a/b); // a 변수 값에 b 변수 값을 나누는 산술 연산을 한 뒤 출력한다.
// 단, 자료형이 정수임으로 결과값이 실수 이더라도 정수의 값만 출력한다.
System.out.println((float) a/b); // 캐스팅 , 자료형 형 변환 방법
float d = a/b;
System.out.println(d); // 0.0으로 찍히는 이유
System.out.println(a); // 정수로 찍히는 이유
a 는 정수 10 이고
b 는 정수 20 이다
c 는 정수 30 이다
d 는 실수 자료형 이다. a 의 정수 자료형과 b의 정수 자료형의 결과는 0.5이지만 두 변수의 자료형이 정수 임으로 0이라는 값이 d에 입력된다.
d 의 자료형은 실수형 임으로 0.0을 갖게 된다. (연산자 처리 순서에 따라서 진행된다)
a 의 자료형은 이미 정수로 선언되어 있으므로 그대로 정수형을 유지하며 값인 10을 출력하게된다.
형 변환은 잠깐 바뀔 뿐이고 실제 자료형이 바뀌지 않는다.
-- 응용문제 --
float d 의 값이 0.5가 되게 하라
float d = (float) a/b; // 캐스팅하여 일시적으로 a의 자료형을 실수로 변환화면 됨
실습 - 자료형과 캐스팅(형변환) , 결과값 유추해 보기
int aa = 20;
float bb = 10.2f;
System.out.println(aa);
System.out.println(bb);
bb = bb+20;
System.out.println(bb);
System.out.println(aa+(int)bb);
System.out.println(aa);
int dd = 4;
float cc = aa*(2+dd)/3+(float)bb;
System.out.println(cc);
출력 값 확인
더보기
20
10.2
30.2
50
20
70.2
실습 - IF , 조건문
public static void main(String[] args) {
// 철수는 자격증 시험을 보았다. 그 정수를 저장한다
int point = 77;
// 시험 문제 1개가 오류, 그 문제는 모두 정답 처리함 + 3점이 올라갔다.
point += 3;
System.out.println("철수의 점수 : " + point);
// 60점 이상이면 합격이다. 합격인가? 불합격인가 ?
// 변수는 값을 저장하는 것 이다. 저장공간을 할당한다
// 해당 내용은 비교 하고 판단하는게 필요하다.
// 비교 판단은 정확한 기준이 필요하다.
// 홍길동은 잘 생겼다 = 기준이 없으므로 불가
// 홍길동의 키가 178이상이다 = 기준이 있으므로 가능
if (point >= 60) {
System.out.println("합격");
}
System.out.println("---------------------------------------------");
point = 40;
// 철수의 값을 변경
if (point >= 60) {
System.out.println("합격");
}
// 60점 이상이라는 값에 참이 아니므로 실행되는게 없음
System.out.println("---------------------------------------------");
// else 문을 사용하여 60점 이하일 경우 불합격을 출력하게함.
if (point >= 60) {
System.out.println("합격");
} else {
System.out.println("불합격");
}
System.out.println("---------------------------------------------");
// 참 인것만 관심이 있는 경우 If 문만 사용하면 된다
// 참과 거짓인 부분이 되야 하는 경우 if ~ else 문을 사용 해야 한다.
실습 - 조건문의 과제
public static void main(String[] args) {
// 문제 1
// int point = 89
// 40 점 미만이면 과락, 60점 미만이면 불합격, 60점 이상이면 합격이라고 출력하시오
int point = 39;
if (point >= 60) {
System.out.println("합격");
}
else if (point <= 60 && point >= 40 ) // 60점 미만, 40점 이상
{
System.out.println("불합격 ");
}
else {
System.out.println("과락");
}
}
public static void main(String[] args) {
// 문제 2
// int point = 50;
// 점수가 60점 미만이면 현재 점수에서 10을 더하여 저장, 점수를 출력하라
int point = 50;
if (point <= 60){
point += 10;
}
System.out.println(point);
}
public static void main(String[] args) {
// 문제 3
// int typeFlag = 35;
// 홀수면 홀수, 짝수면 짝수라고 출력하시오
int typeFlag = 36;
if (typeFlag % 2 == 0) {
System.out.println("짝수");
} else {
System.out.println("홀수"); }
}
public static void main(String[] args) {
// 문제 4
// int addNumber = 56;
// 홀수이면 현재값에서 + 30 , 짝수이면 현재 값에서 -20 한 결과를 저장하고 출력하시오
int addNumber = 55;
if (addNumber % 2 == 0) {
System.out.println("짝수");
addNumber = addNumber-20;
System.out.println(addNumber);
} else {
System.out.println("홀수");
addNumber = addNumber+30;
System.out.println(addNumber);
}
}
public static void main(String[] args) {
// int typeFlag = 47;
// 3의 배수이면서 5의 배수이면 현재 저장된 값을 출력하시오
int typeFlag = 47;
if (typeFlag % 3 ==0 && typeFlag % 5 == 0) {
System.out.println(typeFlag);
}
else { System.out.println(" 3의 배수 && 5의 배수가 아닙니다 "); }
}
public static void main(String[] args) {
// 문제 6
// 골프장 벙커에 빠진 공
// int x = 30;
// int y = 24;
// int size = 20; // 벙커의 크기
// x와 y는 좌표이다.
// 초기값을 뜻함
// 벙커의 크기는 시작점이 x,y에서 사각형모양으로 x좌표에서 + 20만큼, y좌표에서 -20만큼 위치되어 있다.
// 벙커 사이즈와 위치 정의
int x = 30;
int y = 24;
int size = 20;
int xx=x + size;
int yy=y - size;
// 현재 볼의 위치는 다음과 같고 볼의 크기는 다음과 같다.
// int ballx=40;
// int bally=34;
// int ballsize=3;
// ballx에서 + 3, bally에서 +3만큼이 볼의 크기이다.
// 볼도 사각형모양이다
// 공은 벙커에 빠졌는지.. 판단하는 프로그램을 작성하시오.
int ballx = 40;
int bally = 34;
int ballsize = 3;
// x(30) ~ xx(50) , yy(4) ~ y(24)
// x <= ballx <= xx , yy <= bally+3 <= y
// x <= ballx && ballx <= xx , yy <= bally && bally+3 <= y
if (x <= ballx && ballx+3 <= xx
&& yy <= bally && bally+3 <= y) {
System.out.println("벙커 안에 있다");
}
else {
System.out.println("벙커 안에 없다");
}
}
반응형
'👩🏻💻 𝐋𝐚𝐧𝐠𝐮𝐚𝐠𝐞 > ⠀⠀⠀⠀ Jᴀᴠᴀ' 카테고리의 다른 글
2023/09/25🌙 배열 및 for문 활용 (0) | 2023.09.26 |
---|---|
2023/09/22🌹 단일 for 문과 if 문 실습 (0) | 2023.09.23 |
2023/09/21✏️ For문 (0) | 2023.09.21 |
2023/09/19 ✨ IF문 실습 (0) | 2023.09.21 |
2023/09/15⭐️ Java를 시작하다 (0) | 2023.09.18 |