지금까지 if문 if - else문 if - else if - else문을 알아보았다.
오늘은 if문 내에 또 다른 if 문을 포함시키는 것이 가능한 중첩 if 문에 대해서 연습해보기로 하자.
이 그림과 같이 중첩 if 문을 좀 더 보기 쉽게 표기하기 위해 중괄호의 색을 넣었다. 에디터에서는 좀 더 보기 쉽게 꼭 한번 더 들여 쓰기를 해서 두 if문의 범위를 명확하게 구별할 수 있게 해야 한다. 조건식 1 if 문에 중괄호가 조건식 2 if 문을 포함하였다고 알 수 있다.
자 아래 예를 들어 좀 더 쉽게 이야기해보자
여기까지는 뭐 어렵지는 않으나 문제는 A 도 A+, A0, A- 가 있고 B C까지 다 있다.
A+는 100 ~ 98까지 A0는 97 ~ 94까지 A-는 93 ~ 91까지
B+는 90 ~ 88까지 B0는 87 ~ 84까지 B-는 83 ~ 81까지
C+는 80 ~ 78까지 C0는 77 ~ 74까지 C-는 73 ~ 71까지 등급이 나누어진다고 하자
이제 중첩 if 문을 사용하여 만들어 보자 +,0,-는 lev를 사용해보자
package ifexample;
import java.util.Scanner;
public class ifEx3 {
public static void main(String[] args) {
int score = 0;
char grade = ' ', lev= '0';// 기본으로 A0, B0, C0 으로 설정
System.out.println("점수를 입력해 주세요.");
Scanner sc = new Scanner(System.in);
score = sc.nextInt();
if(score > 90) {
grade = 'A';
if (score > 97) {
lev = '+';
} else if (score < 94){
lev = '-';
}
}else if(score > 80) {
grade = 'B';
if (score > 87) {
lev = '+';
} else if (score < 84){
lev = '-';
}
}else if(score > 70) {
grade = 'C';
if (score > 77) {
lev = '+';
} else if (score < 74){
lev = '-';
}
}else if(score > 60) {
grade = 'D';
}else {
grade = 'F';
System.out.println("시험에 탈락 하셨습니다. 재수강을 들으셔야 합니다.");
}
System.out.println("당신의 점수는 "+score+"이고 등급은 "+ grade + lev +" 입니다.");
}
}
[조건문] if 문 / if-else 문 (0) | 2020.01.11 |
---|---|
제어문(Control Statement) (0) | 2020.01.10 |
[FOR문]을 활용하여 크리스마스트리를 만들어 보자.-6- (0) | 2020.01.09 |
[FOR문]을 활용하여 크리스마스트리를 만들어 보자.-5- (0) | 2020.01.09 |
[FOR문]을 활용하여 크리스마스트리를 만들어 보자.-4- (0) | 2020.01.09 |
댓글 영역