JAVA
Test037.java / 제어문 if 문 if~else 문 / 사용자로부터 임의의 연도를 입력받아 입력받은 연도가 윤년인지 평년인지 판별하여 그 결과를 출력하는 프로그램 구현하기
universedevelope
2022. 7. 18. 23:01
/*==============================================
■ ■ ■ 실행 흐름의 컨트롤(제어문) ■■■
==============================================*/
// 물을 자유롭게 컨트롤 하듯 실행 흐름을 컨트롤 해야한다.
// if 문
// if ~ else 문 실습
// 1. 프로그램을 작성할 때 주어진 조건에 따라
// 분기 방향을 정하기 위해 사용하는 제어문에는
// if문, if~else문, 조건연산자, 복합if(if문 중첩),
// switch 문이 있다.
// 2. if문은 if 다음의 조건이 참일 경우,
// 특정 문장을 수행하고자 할 때 사용되는 구문이다.
// ○ 과제
// → 카페 코딩위드어스(https://cafe.naver.com/codingwithus)
// 사용자로부터 임의의 연도를 입력받아
// 입력받은 연도가.. 윤년인지 평년이지 판별하여
// 그 결과를 출력하는 프로그램을 구현한다.
// 단, 입력은 BufferedReader의 readLine() 을 활용하고
// if 조건문 활용하여 연산을 수행할 수 있도록 한다.
// 실행 예)
// 임의의 연도 입력 : 2000
// 2000년 → 윤년
// 계속하려면 아무 키나 누르세요...
// 임의의 연도 입력 : 2012
// 2012년 → 윤년
// 계속하려면 아무 키나 누르세요...
// 임의의 연도 입력 : 2022
// 2022년 → 평년
// ※ 2월이 28일까지 있는 해 → 평년
// 29일까지 있는 해 → 윤년
// 윤년은 4의 배수이면서 100의 배수가 아니거나, 400의 배수면 윤년
// 그렇지 않으면 평년
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Test037
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 주요 변수 선언
int a;
String strName;
// 연산 및 처리
System.out.print("임의의 연도 입력 : "); //-- 사용자에게 입력받을 메세지
a = Integer.parseInt(br.readLine()); //-- 정수형태의 a를 담기
strName = "평년"; //-- 『String strName』초기화
// 결과 출력 전 if 조건문 작성(a값 변화에 따른 조건 부여)
if (a%400==0) //-- 『a』가 400의 배수인경우
{
strName = "윤년";
}
else if(a%100!=0 && a%4==0) //-- 『a』가 100의 배수가 아니거나
{
strName = "윤년"; // 4의 배수인 경우
}
else
{
System.out.println("판별 불가");
}
// 최종 결과 출력
System.out.printf("%d → %s%n", a, strName);
}
}
// 실행 결과
/*
임의의 연도 입력 : 2000
2000 → 윤년
계속하려면 아무 키나 누르십시오 . . .
*/
/*
임의의 연도 입력 : 1999
1999 → 평년
계속하려면 아무 키나 누르십시오 . . .
*/
728x90