'며칠 밤 자면 크리스마스' 계산기란?
크리스마스 시즌이 다가오면 아이들은 물론 어른들도 "크리스마스까지 며칠 밤 남았어?"라고 묻곤 합니다. 여기서 '한 밤'은 하룻밤을 뜻해요. 즉, 크리스마스 아침에 눈을 뜨기 전까지 몇 번이나 잠자리에 드는지를 세는 것이죠. 이 계산기는 여러분이 선택한 날짜부터 다음 12월 25일까지의 온전한 날수를 계산해, 남은 밤 수를 정확하게 알려줍니다.
사용 방법
기준이 될 연도, 월, 일을 입력하세요(기본값은 오늘입니다). 계산기는 그 날짜를 자정 기준으로 잡고, 다음 12월 25일 자정까지의 온전한 날수를 계산합니다. 만약 입력한 날짜가 이미 12월 25일을 지났다면, 자동으로 내년 크리스마스를 기준으로 다시 계산해 줍니다.
계산 공식 풀이
두 시점을 각각 타임스탬프로 바꾼 뒤, 그 차이를 하루의 초 수(86,400초)로 나눕니다. 다음 잠자리에 들기 전까지는 하루가 채워지지 않아도 같은 '밤'으로 치기 때문에, floor 함수로 소수점을 버려 정수로 내림합니다.
$$\text{Sleeps} = \left\lfloor \frac{\text{Dec } 25,\ Y - \text{From Date}}{86400 \text{ s}} \right\rfloor \\[1.5em] \text{where}\quad \left\{ \begin{aligned} \text{From Date} &= (\text{Year},\ \text{Month},\ \text{Day}) \\ Y &= \begin{cases} \text{Year} & \text{if From Date} \le \text{Dec } 25 \\ \text{Year} + 1 & \text{if From Date} > \text{Dec } 25 \end{cases} \end{aligned} \right.$$
예시로 보기
오늘이 12월 1일이라고 해볼게요. 12월 1일 자정부터 12월 25일 자정까지는 정확히 24일입니다. 따라서 크리스마스까지 24밤이 남은 거죠. 만약 오늘이 12월 24일이라면 남은 밤은 단 1밤, 즉 하룻밤만 더 자면 바로 그날이 됩니다.
자주 묻는 질문
'밤'과 '날'은 같은 건가요? 네, 한 밤은 하룻밤을 의미하므로, 남은 밤 수는 남은 온전한 날수와 같습니다.
12월 25일 당일에는 어떻게 되나요? 크리스마스가 이미 왔기 때문에 계산기는 0밤을 표시합니다.
크리스마스가 지난 날짜를 입력하면요? 자동으로 내년 12월 25일까지 남은 날을 세어 줍니다.