본문 바로가기
C#

[C# 문제] 윤년구하기

by 샤나엘 2021. 10. 6.
반응형

문제

입력받은 값이 윤년이면 1을 출력하고, 아니면 0을 출력하는 프로그램을 작성하시오.

 

※ 윤년은 4의 배수이면서 100의 배수가 아니거나, 400의 배수인 경우

  • 예1) 2020년은 4의 배수이고 100의 배수는 아니라서 윤년이다.
  • 예2) 1900년은 4의 배수이고, 100의 배수이고, 400의 배수는 아니라서 윤년이 아니다.
  • 예3) 2000년은 4의 배수이고, 100의 배수이나, 400의 배수라서 윤년이다.

입력

년도

 

출력

윤년이면 1, 아니면 0 출력

 

코드

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            /* 윤년
             * 윤년은 4의 배수이면서, 100의 배수가 아닐때
             * 혹은 400의 배수일때
             * 예1) 2020년은 4의 배수이고 100의 배수는 아니라서 윤년이다.
             * 예2) 1900년은 4의 배수이고, 100의 배수이고, 400의 배수는 아니라서 윤년이 아니다.
             * 예3) 2000년은 4의 배수이고, 100의 배수이나, 400의 배수라서 윤년이다.
             */

            int year = int.Parse(Console.ReadLine());

            if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
                Console.WriteLine("1");
            else
                Console.WriteLine("0");
        }
    }
}

 

결과

반응형

댓글