Small Grey Outline Pointer Java if문 윤년 평년 계산하기
본문 바로가기
Dev./java

Java if문 윤년 평년 계산하기

by sso. 2022. 4. 30.

 

if~else

import java.util.Scanner;

public class ifTest2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 윤년 테스트
		Scanner sc = new Scanner(System.in);
		System.out.print("윤년/평년을 판별할 년도를 입력하세요: ");
		int year = sc.nextInt();

		// 년도가 4로 나누어 떨어지고(&&), 100으로 나눠 떨어지지 않거나(||), 400으로 나눠 떨어지면 윤년 그렇지 않으면 평년
		if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
			System.out.println(year + "년은 윤년 입니다.");
		}
		else {
			System.out.println(year + "년은 평년 입니다.");
		}

			sc.close();
	}

}

윤년/평년을 판별할 년도를 입력하세요: 2021
2021년은 평년 입니다.

 

 

년도가 4로 나누어 떨어지고(&&), 100으로 나눠 떨어지지 않거나(||)

400으로 나눠 떨어지면 윤년 그렇지 않으면 평년

 

(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)

 

 

 

 

삼항연산자

import java.util.Scanner;

public class ifTest2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 윤년 테스트
		Scanner sc = new Scanner(System.in);
		System.out.print("윤년/평년을 판별할 년도를 입력하세요: ");
		int year = sc.nextInt();

		// 년도가 4로 나누어 떨어지고(&&), 100으로 나눠 떨어지지 않거나(||), 
        400으로 나눠 떨어지면 윤년 그렇지 않으면 평년
		
		//삼항연산자(?:)
		//if의 조건을 비교한 결과 조건이 참일 때와 거짓일 때 실행할 문장이 각각 1문장인 경우 사용하면 편리
		//조건식 ? 조건식이 참이 경우 실행할 문장 : 조건식이 거짓일 경우 실행할 문장
		System.out.println(year + "년은 " +(year % 4 == 0 && year % 100 != 0 || year % 400 == 0? "윤":"평")+ "년 입니다.");

			sc.close();
	}

}

윤년/평년을 판별할 년도를 입력하세요: 2019
2019년은 평년 입니다.

 

 

삼항연산자(?:)
if의 조건을 비교한 결과 조건이 참일 때와 거짓일 때 실행할 문장이 각각 1문장인 경우 사용하면 편리하다
조건식 ? 조건식이 참이 경우 실행할 문장 : 조건식이 거짓일 경우 실행할 문장

 

 

 

 

똑같은 값이 여러번 사용될 때는 변수에 저장시켜 사용하면 편리하다

import java.util.Scanner;

public class ifTest2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 윤년 테스트
		Scanner sc = new Scanner(System.in);
		System.out.print("윤년/평년을 판별할 년도를 입력하세요: ");
		int year = sc.nextInt();
		// 프로그램에서 여러번 사용되는 값은 변수에 저장시켜 사용하면 편리하다
		// 논리값을 기억하는 변수나 논리값을 리턴하는 메소드의 이름은 "is"로 시작하게 하는 것이 관행이다
		boolean isLeapYear = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;

		// 년도가 4로 나누어 떨어지고(&&), 100으로 나눠 떨어지지 않거나(||), 400으로 나눠 떨어지면 윤년 그렇지 않으면 평년
		if (isLeapYear) {
			System.out.println(year + "년은 윤년 입니다.");
		} else {
			System.out.println(year + "년은 평년 입니다.");
		}
		// 삼항연산자(?:)
		// if의 조건을 비교한 결과 조건이 참일 때와 거짓일 때 실행할 문장이 각각 1문장인 경우 사용하면 편리하다
		// 조건식 ? 조건식이 참이 경우 실행할 문장 : 조건식이 거짓일 경우 실행할 문장
		System.out.println(year + "년은 " + (isLeapYear ? "윤" : "평") + "년 입니다.");

		sc.close();
	}

}

 

728x90

'Dev. > java' 카테고리의 다른 글

Java for  (0) 2022.04.30
Java switch 성적 처리  (0) 2022.04.30
인스턴스와 참조변수  (0) 2022.04.29
Java class  (0) 2022.04.27
Java 조건문(if~else)  (0) 2022.04.23

댓글