if ~ else if ~ else문(다중 if ~ else문 또는 if ~ else if문)

Mia Lee·2021년 11월 4일
0

JAVA

목록 보기
17/98
package if_statement;

public class Ex3 {

	public static void main(String[] args) {

		/*
		 * if ~ else if ~ else문(다중 if ~ else문 또는 if ~ else if문)
		 * 
		 * < 기본 문법 >
		 * if (조건식1) {
		 * 
		 * 		// 조건식1의 결과가 true일 때 실행할 문장들...
		 * 
		 * } else if (조건식2) {
		 * 
		 * 		// 조건식1의 결과가 false 이고, 조건식2의 결과가 true일 때 실행할 문장들...
		 * 
		 * 
		 * } else if (조건식n) {
		 * 		
		 * 		// 조건식1, 2의 결과가 false이고, 조건식n의 결과가 true 일 때 실행할 문장들...
		 * 
		 * } else {
		 * 
		 * 		// 조건식의 결과가 false 일 때 실행할 문장들...
		 * 		// 생략도 가능!
		 * 
		 * }
		 * 
		 */
		
		// 정수 num이 5보다 크면 "num 이 5보다 크다" 출력하고,
		// 정수 num이 5보다 작으면 "num 이 5보다 작다" 출력,
		// 만약, 둘 다 아닐 경우 "num 이 5와 같다" 출력
		
		int num = 4;
		
		if (num > 5) {
			System.out.println("num 이 5보다 크다!");
			
		} else if (num < 5) {
			System.out.println("num 이 5보다 작다!");
			
		}
		
		// => 만약, num 이 5일 경우 if문과 else if문 모두 실행되지 않음!
		
		// num 이 5 일때, if문과 else if문 모두 해당되지 않으면
		// 실행할 문장을 else문 블록에 기술해야한다!
		
		if (num > 5) {
			System.out.println("num 이 5보다 크다!");
			
		} else if (num < 5) {
			System.out.println("num 이 5보다 작다!");
			
		} else {
			System.out.println("num 은 5이다!");
			
		}
		
		System.out.println("====================================");
		
		/*
		 * 점수(score)가 90이상이면 "A"
		 * 80 ~ 89 사이면 "B"
		 * 70 ~ 79 사이면 "C"
		 * 60 ~ 69 사이면 "D"
		 * 59 이하면 "F"
		 * 
		 * ex) score = 85;
		 * 출력결과
		 * -----------
		 * 85 점의 학점 : B 
		 * 
		 */
		
		int score = 120;
		String grade = "";
		
		if (score >= 90) {
//			System.out.println(score + " 점의 학점 : A");
			grade = "A";
			
		} else if (score >= 80) {
//			System.out.println(score + " 점의 학점 : B");
			grade = "B";
			
		} else if (score >= 70) {
//			System.out.println(score + " 점의 학점 : C");
			grade = "C";
			
		} else if (score >= 60) {
//			System.out.println(score + " 점의 학점 : D");
			grade = "D";
			
		} else {
//			System.out.println(score + " 점의 학점 : F");
			grade = "F";
			
		}
		
		System.out.println("수학 " + score + " 점의 학점 : " + grade);
		
		/*
		 * 중첩 if문
		 * - if문 안에 또 다른 if문이 중첩되는 형태
		 *   => 특정 조건을 만족할 때 새로운 if문이 다시 수행되는 문장
		 *   
		 */
		
		System.out.println("==============================");
		
		// 점수가 정상범위(0 ~ 100 사이) 인지 판별
		if (score >= 0 && score <= 100) {
			
			if (score >= 90) {
				grade = "A";
				
			} else if (score >= 80) {
				grade = "B";
				
			} else if (score >= 70) {
				grade = "C";
				
			} else if (score >= 60) {
				grade = "D";
				
			} else {
				grade = "F";
				
			}
			
			System.out.println("수학 " + score + " 점의 학점 : " + grade);
			
		} else { // 0 ~ 100 사이가 아닐 경우
			System.out.println(score + " : 점수 입력 오류!");
			
		}
		
	}
	
	

}














0개의 댓글