1. JAVA/4). 자바_실전_이클립스

자바실전_Day_06_02(if문)

구이제이 2024. 1. 10. 18:31

-----------------------------------------------------------------------------------



1번째 예제

 

Scanner scan = new Scanner(System.in);

int score = 0;

 

System.out.println("성적 입력>>>");

score = scan.nextInt();

 

/*

if(score >= 80) {

System.out.println("합격");

}

 

System.out.println("즐거운 시간!!");

*/

 

/*

if(score >= 80) {

System.out.println("합격");

}else {

System.out.println("불합격");

}

 

System.out.println("즐거운 시간!!");

*/

// 평균 90점 이상이면 "우수", 90점 미만 80점 이사잉면 "보통"

// 80점 미만이면 "노력 요함"

 

if(score>=90) {

System.out.println("우수");

}else if(score>=80) {

System.out.println("보통");

} else {

System.out.println("노력 요함");

}

 

System.out.println("즐거운 시간!!");

 

 

//성적이 90점 이상이면 "A", 90점 미만 80점 이상이면 "B"

//80점 미만 70점 이상이면 "C"

//70점 미만 60점 이상이면 "D"

//60점 미만이면 "F"로 처리

 

 

//1)

//반복x,간결,가독성

 

if(score>=90) {

System.out.println("A");

}else if(score>=80) {

System.out.println("B");

} else if(score>=70) {

System.out.println("C");

} else if(score>=60) {

System.out.println("D");

}else{

System.out.println("F");

}

 

System.out.println("수고하셨습니다.");

 

 

//2)코드축소화

 

String result = "";

if(score>=90) {

result = "A";

}else if(score>=80) {

result = "B";

} else if(score>=70) {

result = "C";

} else if(score>=60) {

result = "D";

}else{

result = "F";

}

 

System.out.println("당신의 성적은 " + result + "입니다.");

System.out.println("수고하셨습니다.");

 

 

 

-----------------------------------------------------------------------------------



2번째 예제

 

 

 

/*

Scanner scan = new Scanner(System.in);

 

System.out.println("============1번=================");

System.out.println("회원 값을 입력하세요 : ");

int number = scan.nextInt();

 

String score = "";

if(number>=20) {

score = "VIP";

}else if(number >=10) {

score = "GOLD";

}else {

score = "일반회원";

}

 

System.out.println("회원의 등급은 : " + score + " 입니다.");

*/

 

 

 

 

//Tea 1번문제

Scanner scan = new Scanner(System.in);

//scan - 참조변수, 주소를 저장, 지역변수

 

int point = 0; //double dPoint = 0.0; //지역변수

//float fPoint = 0.0f;

//long lPoint = 0L;

 

String grade = ""; //char ch = ' ';

 

 

 

 

//자바의 변수 타입

//기본타입,참조타입 2개로 나눈다.

//기본타입은 기본값을 가지고 있다. (Byte, short, char, int, long, float, double, boolean)

//기본타입은 실제로 값을 담는다

//그러나 참조타입은 주소를 담고 있다.

 

System.out.println("포인트를 입력>>");

//point = scan.nextInt();

 

point = Integer.parseInt(scan.next());

 

//자바는 다르게 표시한다.

//문자 ''

//문자열 ""

//정수

 

if(point>=20) {

grade = "VIP";

}else if(point>=10) {

grade = "GOLD";

}else {

grade = "일반회원";

}

 

 

System.out.println(grade);

 

 

 

-----------------------------------------------------------------------------------



3번째 예제

 

 

 

/*

System.out.println("============4번=================");

System.out.println("수량을 입력하세요 : ");

number = scan.nextInt();

 

number *=4500;

 

System.out.println("영수증이 필요하십니까? ");

System.out.println("ex)필요하면 1 입력");

score = scan.nextLine(); //그냥 넘어가져서 한번더쓴다.

score = scan.nextLine();

 

String check ="";

if(score.equals("1")) {

check = "영수증 여기 있습니다";

}else {

check = "영수은 없습니다";

}

 

System.out.println("금액은 : " + number + " 입니다.");

System.out.println(check);

*/

 

 

 

//Tea 4번문제

 

/*

 

//#1. Scanner 객체 생성 - 입력을 받기

Scanner scan = new Scanner(System.in);

 

//#2.변수 선언

int amount = 0;

String receipt = "";

 

//#3.안내문구

System.out.print("수량 입력");

amount = scan.nextInt(); //#3-1키보드에서 입력한 값을 변수에 담기

 

//#4.금액을 계산

int money = amount *4500; //직접 숫자를 쓰는 것보다, 변수명으로 주는 것이 좋다.(매직넘버가 될수있다.)

 

 

//#5.영수증 유무 묻기

System.out.println("영수증이 필요하십니까?\n(1-필요, 2-불필요)");

String receiptCheck = scan.next();//문자열

 

//#6.영수증 처리

//변수에 담긴 문자열(receiptCheck)과 "1"이 같은지 비교

if(receiptCheck.equals("1")) {

receipt = "여기 있습니다.";

}else {

receipt = "없습니다.";

}

 

//#7.출력

System.out.println("금액 " + money + "입니다.");

System.out.println("영수증 " + receipt);

 

 

// == 은 ★스택에 있는 것을 비교한것 ex)num == 10, su == 30

// 문자열을 비교할때

//변수.equals("비교할문자열")

 

*/

 

 

 

 

-----------------------------------------------------------------------------------



4번째 예제

 

 

 

 

 

//Tea 4번문제 - 리팩토링

 

//#1. Scanner 객체 생성 - 입력을 받기

Scanner scan = new Scanner(System.in);

 

//#2.변수 선언

int amount = 0, money = 0;

String receipt = "", receiptCheck="";

final int PRICE = 4500; //상수의 변수 명은 대문자로 쓰자 (관례)

 

//#3.안내문구

System.out.print("수량 입력");

amount = scan.nextInt(); //#3-1키보드에서 입력한 값을 변수에 담기

 

//#4.금액을 계산

//int money = amount *4500; //직접 숫자를 쓰는 것보다, 변수명으로 주는 것이 좋다.(매직넘버가 될수있다.)

money = amount * PRICE;

//PRICE = 300; 상수를 밑에서 변경할수가 없다.

 

//#5.영수증 유무 묻기

System.out.println("영수증이 필요하십니까?\n(1-필요, 2-불필요)");

//String receiptCheck = scan.next();//문자열

receiptCheck = scan.next();

 

//#6.영수증 처리

//변수에 담긴 문자열(receiptCheck)과 "1"이 같은지 비교

if(receiptCheck.equals("1")) {

receipt = "여기 있습니다.";

}else {

receipt = "없습니다.";

}

 

//#7.출력

System.out.println("금액 " + money + "입니다.");

System.out.println("영수증 " + receipt);

 

 

// == 은 ★스택에 있는 것을 비교한것 ex)num == 10, su == 30

// 문자열을 비교할때

//변수.equals("비교할문자열")

 

 

 

 

 

/*

Scanner scan = new Scanner(System.in);

String str = new String();

char c = ' ';

str = scan.nextLine();

c = str.charAt(7);

 

String a = "";

System.out.println(c);

if(c=='2'|| c=='4') {

a = "여";

}else {

a = "남";

}

 

System.err.println("입력한 값 : " +str );

System.out.println("결과 : " + a);

*/

 

 

//Tea 5번

//변수명을 고민을 해라

 

//문자열로 뽑는 방법

//문자로 뽑는 방법

 

//안내를 잘한다면, 오류를 줄일 수 있습니다.

 

 

//#1.Scanner 객체 생성 - 입력을 받기

Scanner scan = new Scanner(System.in);

 

//#2.변수 선언

String juminNo ="", gender="";

char genderCheckNo = ' '; // ''에러

 

//#3.안내문구

System.out.println("주민등록번호 입력\n[입력예시 : 990108-1234567]");

juminNo = scan.nextLine();

 

//#4.처리

//주민번호에서 성별에 해당하는 숫자 골라내기

genderCheckNo = juminNo.charAt(7); //주민번호의 8번째자리 하나

//인덱스는 0부터 시작하므로

 

if(genderCheckNo== '1' || genderCheckNo =='3') {

gender = "남";

}else {

gender = "여";

}

 

//#5.출력

System.out.println("당신의 성별 : " + gender);