package study.exam;
import java.util.Scanner;
public class Ex08 {
public static void main(String[] args) {
new Ex08().start();
}
// 시작
public void start() {
int month = getInputMonth(); // 달 입력받기
printResult(month); // 결과 출력하기
}
// 결과 출력 메서드
public void printResult(int month) {
System.out.println(month + " 월은 " + get4Season(month) + " 입니다.");
}
// 입력값에 따른 계절명 반환 메서드
public String get4Season(int month) {
String result = "";
if(month==12||month==1||month==2) {
result = "겨울";
}else if( month<6 ) { // 3~5 월이면
result = "봄";
}else if( month<9 ) { // 6~8월이면
result = "여름";
}else { // 9~11월이면
result = "가을";
}
return result;
}
// 사용자에게 달을 입력받는 메서드
public int getInputMonth() {
Scanner sc = new Scanner(System.in);
int month = 1; // 입력받는 달
while(true) {
try {
System.out.print("원하는 달을 입력하세요.(1 ~ 12) : ");
String monthStr = sc.next(); // 사용자 입력
month = Integer.parseInt(monthStr);
if(month>=1&&month<=12) { // 1~12사이의 숫자이면
break;
}else { // 1~12사이의 숫자가 아니면
throw new Exception();
}
} catch (Exception e) {
System.out.println("1~12사이의 정수만 입력해주세요");
}
}
return month;
}
}