📚 Study/Java
JAVA :: Test034_과제_제어문 if~else (윤년/평년 판별하는 프로그램 구현)
bono-hye
2023. 9. 8. 10:39
○ 과제
사용자로부터 임의의 연도를 입력받아
입력받은 연도가 윤년인지 평년인지 판별하여
그 결과를 출력하는 프로그램을 구현한다.
단, 입력은 BufferedReader를 활용하고
if 조건문을 활용하여 연산을 수행할 수 있도록 한다.
실행 예)
임의의 연도 입력 : 2024
2024년 → 윤년
계속하려면 아무 키나 누르세요...
실행 예)
임의의 연도 입력 : 2023
2024년 → 평년
계속하려면 아무 키나 누르세요...
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test034
{
public static void main(String[] args) throws IOException
{
// 주요 변수 선언
int year; //-- 사용자가 입력한 임의의 연도
String result; //-- 윤년인지 평년인지 판별
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 연산 및 처리
System.out.print("임의의 연도 입력 : "); //-- 사용자에게 안내 메세지 출력
year = Integer.parseInt(br.readLine()); //-- 문자열을 정수로 변환 후 변수 year에 담아냄
if (year%4==0 && year%100!=0 || year%400==0) //-- 연도가 4의 배수이면서 100의 배수가 아니거나 400의 배수인 경우에는 "윤년"
{
result = "윤년";
}
else if (year%4!=0 || year%100==0 && year%400!=0 ) //-- 연도가 4의 배수가 아니거나 100의 배수이면서 400의 배수가 아닌 경우에는 "평년"
{
result = "평년";
}
else
{
result = "입력 과정에 오류가 존재합니다."; //-- 사용자가 입력한 값에 오류가 있어 판별이 불가능한 경우
}
// 결과 출력
System.out.printf("%d년 → %s\n", year, result);
}
}