요일 계산기란?
이 도구는 과거든 현재든 미래든, 달력상의 어떤 날짜가 무슨 요일인지 알려줍니다. 내가 태어난 날이 무슨 요일이었는지, 역사적 사건이 일어난 요일은 언제였는지, 또는 다가오는 마감일이 무슨 요일에 떨어지는지 궁금할 때, 연도와 월, 일을 입력하면 즉시 답을 얻을 수 있습니다. 계산은 선행 그레고리력(proleptic Gregorian calendar)을 기준으로 젤러의 합동식(Zeller's congruence)을 사용합니다.
사용 방법
연도를 고르고, 드롭다운에서 월을 선택한 뒤, 해당 월의 일자를 입력하세요. 계산 버튼을 누르면 결과창에 요일 이름이 표시됩니다. 표에는 프로그래머나 호기심 많은 분들을 위해 젤러 원시 지수(\(h\))와 ISO 요일 번호(1 = 월요일 … 7 = 일요일)도 함께 나옵니다.
공식 설명
젤러의 합동식은 조회 표 없이 순수한 산술 연산만으로 요일을 계산합니다. 1월과 2월은 전년도의 13월과 14월로 취급하는데, 이렇게 하면 윤일 처리가 간단해집니다. \(q\) = 일, \(m\) = 보정한 월, \(K = Y \bmod 100\), \(J\) = 세기(연도 ÷ 100)라고 할 때 공식은 다음과 같습니다:
$$h = \left( q + \left\lfloor \frac{13(m+1)}{5} \right\rfloor + K + \left\lfloor \frac{K}{4} \right\rfloor + \left\lfloor \frac{J}{4} \right\rfloor + 5J \right) \bmod 7.$$여기서 \(h = 0\)은 토요일, 1은 일요일이며, 이런 식으로 6 = 금요일까지 이어집니다.
계산 예시
2020년 3월 13일의 경우: \(q = 13\), \(m = 3\), \(y = 2020\)이므로 \(K = 20\), \(J = 20\)입니다. 그러면 $$h = \left( 13 + \left\lfloor \frac{52}{5} \right\rfloor + 20 + \left\lfloor \frac{20}{4} \right\rfloor + \left\lfloor \frac{20}{4} \right\rfloor + 100 \right) \bmod 7 = (13 + 10 + 20 + 5 + 5 + 100) \bmod 7 = 153 \bmod 7 = 6 = \text{금요일}$$이 됩니다. 실제로 2020년 3월 13일은 금요일이었습니다.
자주 묻는 질문
1582년 이전의 옛 날짜에도 적용되나요? 이 계산기는 선행 그레고리력을 사용하기 때문에, 원래 율리우스력(Julian calendar)으로 기록된 아주 오래된 날짜의 경우 역사 기록상의 요일과 다를 수 있습니다.
왜 토요일이 \(h = 0\)인가요? 이는 고전적인 젤러 공식이 그렇게 정의되어 있기 때문입니다. 계산기가 이를 알아보기 쉬운 요일 이름으로 변환해 줍니다.
어떤 연도든 입력할 수 있나요? 네, 1년부터 9999년까지 어떤 연도든 입력할 수 있습니다. 다만 선택한 월에 맞는 유효한 일자를 입력했는지 확인하세요.