과제
2022.07.05 / Hw1
키보드를 통해서 연도(ex) 2020)를 입력 받는다.
이때 입력 받은 연도가 윤년인지 평년인지를 판별하는
프로그램을 작성하세요
1년 실제론 365.242374일
평년 = 365일 (2월달 - 28일까지)
윤년 = 366일 (2월달 - 29일까지)
소숫점 보정위해 윤년만듬
* 윤년의 정의
1. 해당 연도를 4로 나누어 떨어지면 윤년
2. 그 중에서 100으로 나누어 떨어지면 윤년이 아님
3. 그 중에서 400으로 나누어 떨어지면 윤년
의도
제어문(조건문) 활용
깃허브
https://github.com/kindacool/Hw/tree/main/HW20220705
코드
package p2022_07_05;
import java.util.Scanner;
public class LeapYearHw {
public static void main(String[] args) {
System.out.println("연도를 입력하시오");
Scanner sc = new Scanner(System.in);
int year = sc.nextInt();
boolean isLeapYear = false; // true면 윤년, false면 평년
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
isLeapYear = true;
}
if (isLeapYear == true) {
System.out.println("윤년 입니다.");
} else {
System.out.println("평년 입니다.");
}
}
}
+ 코드 설명
윤년인 경우는 크게 2가지다
1. 4로 나눠지고 100으로 나누어 떨어지지 않는 경우 -> 바로 윤년이다.
2. 4로 나눠지고 100으로 나누어 떨어지는데 400으로 나누어 떨어지는 경우
-> 400으로 나누어떨어지는 수라면 애초에 4로도 나누어떨어지고 100으로도 나누어 떨어지는 수임.
-> 즉 year % 400 == 0 라고만 쓰면 된다
출력
'국비지원 과정 > HW' 카테고리의 다른 글
2022.07.07 / 과제1번 : 중복없는 6개의 숫자 랜덤 추출하기, 오름차순 정렬 (0) | 2022.07.07 |
---|---|
2022.07.06 / 과제1번 : GregorianCalendar 클래스 이용해서 윤년구하기 (0) | 2022.07.06 |
2022.07.04 / 과제1번 : 원주, 원의 면적, 구의 면적, 구의 부피 구하기 (0) | 2022.07.04 |
2022.07.01 / 과제1번 : 유효한 주민번호인지 확인하기 (0) | 2022.07.01 |
2022.06.30 / 과제2번 : Calender 클래스로 연,월,일,시,분,초,요일 구하기 (0) | 2022.06.30 |