1 분 소요

윤년, 평년 판별하기

import java.util.Scanner;
public class IfTest2 {
 public static void main(String[] args) {
 Scanner sc = new Scanner(System.in);
 System.out.println("윤년/평년을 판별할 년도를 입력하세요:");
 int year = sc.nextInt();
// 년도가 4로 나눠떨어지고, 100으로 나눠 떨어지지 않거나 400을 나
 떨어지면 윤년, 그렇지 않으면 평년
 if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) {
 System.out.println("윤년");
 } else {
 System.out.println("평년");
 }
 
}
}

image

삼항 연산자

  • if 의 조건을 비교한 결과 조건이 참일때 와 거짓일 때 실행할 문장이 각각 1문장인 경우 사용하면 편리하다
  • 조건식 ? 조건식이 참일경우 실행할 내용 : 조건식이 거짓일 경우 실행할 내용
 Scanner sc = new Scanner(System.in);
 System.out.println("윤년/평년을 판별할 년도를 입력하세요:");
 int year = sc.nextInt();
 System.out.println(year + "년은" + (year % 100 != 0 || 
 year % 400 == 0 ? "윤" : "평") + "년 입니다.");

image

boolean

 Scanner sc = new Scanner(System.in);
 System.out.println("윤년/평년을 판별할 년도를 입력하세요:");
 int year = sc.nextInt();
 
boolean isLeapYear = year % 100 != 0 || year % 400 == 0;
 

if (year % 4 == 0 && (isLeapYear)) {
 System.out.println("윤년");
 } else {
 System.out.println("평년");
 }
 
System.out.println(year + "년은" + (isLeapYear ? "윤" : "평") + "년 입니다.");
}
  • 논리값을 기억하는 변수나 논리값을 리턴하는 메소드의 이름은 “is”로 시작하게 하는 것이 관행이다.
  • 프로그램에서 여러 번 사용되는 값은 변수에 저장시켜 사용하면 편리하다.

댓글남기기