기초 JAVA 4강 - 조건문

Whatever·2021년 9월 9일
0

기초 JAVA

목록 보기
4/26

조건문

  • if 문
  • switch 문

if문

  • if(조건식){} : 조건식의 결과가 true이면 블럭 안의 문장을 수행한다.
  • else if(조건식){} : 다수의 조건이 필요할 때 if 뒤에 추가한다.
  • else {} : 조건식 이외의 경우를 위해 추가한다.
   int a = 2;
	
	if(a == 1){
		System.out.println("a == 1");			
	}else if(a == 2){
		System.out.println("a == 2");
	}else if(a == 3){
		System.out.println("a == 3");
	}else{
		System.out.println("else");
	}
	
	if(a < 10){
		System.out.println("a가 10보다 작다.");
	}else if(a < 20){
		System.out.println("a가 20보다 작다.");

//점수에 등급을 부여하는 프로그램

	score = 80;
	String grade = null;
	
	if(90 <= score && score <= 100){
		grade = "A";
	}else if(80 <= score){
		grade = "B";
	}else if(70 <= score){
		grade = "C";	
	}else if(60 <= score){
		grade = "D";
	}else{
		grade = "F";
	}				
	System.out.println(score + "점에 해당하는 등급은 " + grade + " 입니다.");

줄 맞추기(정렬)단축키 : 맞추려는 부분 블럭처리하고, Ctrl + Shift + F

switch문

  • switch(int/String){case 1: break;}
  • 조건식의 결과는 정수와 문자열만(JDK1.7부터 문자열 허용) 허용한다.
  • 조건식과 일치하지 않는 case문 이후의 문장을 수행한다.

switch 다음의 () 괄호 안에는 int나 String타입만 올 수 있다.
각 case 가 끝나면 꼭 break;를 해주자.

//주어진 월에 해당하는 계절을 출력해봅시다.

	int month = 1;
	String season = null;

	switch (month) {
	case 3:
	case 4:
	case 5:
		season = "봄";
		break;

	case 6:
	case 7:
	case 8:
		season = "여름";
		break;

	case 9:
	case 10:
	case 11:
		season = "가을";
		break;

	case 12:
	case 1:
	case 2:
		season = "겨울";
		break;
	}
	System.out.println(month + "월은 " + season + "입니다.");

null : 참조형 타입의 기본값.
자동으로 초기화가 될 때 들어가는 값이 기본값.

기본값
boolean = false가 기본값
나머지 = 0가 기본값

오늘의 과제 : 탄수화물 중독 자가진단 테스트 만들기

내 답 :

    System.out.println("탄수화물 중독 자가진단 테스트 시작");
	System.out.println("해당하면 1, 아니면 0을 입력해주세요.");
	
	Scanner sc = new Scanner(System.in); 
	
	System.out.print("아침을 배불리 먹은 후 점심시간 전에 배가 고프다>");
	int num1 = Integer.parseInt(sc.nextLine());
	
	System.out.print("밥, 빵, 과자 등 음식을 먹기 시작하면 끝이 없다>");
	int num2 = Integer.parseInt(sc.nextLine());
	
	System.out.print("음식을 금방 먹은 후에도 만족스럽지 못하고 더 먹는다>");
	int num3 = Integer.parseInt(sc.nextLine());
	
	System.out.print("정말 배고프지 않더라도 먹을 때가 있다>");
	int num4 = Integer.parseInt(sc.nextLine());
	
	System.out.print("저녁을 먹고 간식을 먹지 않으면 잠이 오지 않는다>");
	int num5 = Integer.parseInt(sc.nextLine());
	
	System.out.print("스트레스를 받으면 자꾸 먹고싶어진다>");
	int num6 = Integer.parseInt(sc.nextLine());
	
	System.out.print("책상이나 식탁 위에 항상 과자, 초콜릿 등이 놓여있다>");
	int num7 = Integer.parseInt(sc.nextLine());
	
	System.out.print("오후 5시가 되면 피곤함과 배고픔을 느끼고 일이 손에 안 잡힌다>");
	int num8 = Integer.parseInt(sc.nextLine());
	
	System.out.print("과자, 초콜릿 등 단 음식은 상상만해도 먹고 싶어진다>");
	int num9 = Integer.parseInt(sc.nextLine());
	
	System.out.print("다이어트를 위해 식이조절을 하는데 3일도 못간다>");
	int num10 = Integer.parseInt(sc.nextLine());
	
	int result = num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8 + num9 + num10;
	
	if (result <= 3){
		System.out.println(result + "개, 주의 / 위험한 수준은 아니지만 관리필요");
	}else if(4 <= result && result <= 6){
		System.out.println(result + "개, 위험 / 탄수화물 섭취 줄이기 위한 식습관 개선이 필요함");
		}else{
			System.out.println("<<< 결과 : " + result + "개, 중독 / 전문의 상담이 필요함 >>>");
		}
	} 
}

오늘의 리뷰: 랜덤으로 숫자 3개를 받아서 오름차순으로 정렬하는 문제를 내주셨는데 모든 경우의 수 6을 생각해서 하나하나 다 입력받았다.
너무 비효율적이다ㅜ 생각을 더 해서 짧게 만드는 방법은 없을까?
더 생각해봐야겠다.

0개의 댓글

관련 채용 정보