這個計算機的功能
本工具可從一個起始日期與時間出發,加上(或減去)以天、時、分、秒表示的經過時間,並回傳對應的日期、時刻與星期幾。計算採用外推格里曆(proleptic Gregorian calendar),並將每分鐘視為剛好 60 秒(不納入閏秒)。計算邏輯適用於全球;至於選用的「年號」選項,只是讓你能以日本年號(如明治、大正、昭和、平成、令和)來輸入年份,系統會先換算成西曆(公元)年份再進行計算。
使用方式
先選擇年號(一般年份請保持「西曆(公元)」),接著輸入起始的年、月、日、時、分、秒。選擇方向:「之後(+)」表示往未來推算,「之前(-)」表示往過去回推。再填入要經過的天、時、分、秒,用不到的欄位填 0 即可。送出後即可看到推算出的時間點與星期幾。
公式說明
系統會先將起始日期換算成儒略日數(Julian Day Number,JDN),這是一種連續累計的天數編號。接著把當日的時刻與日數合併換算成總秒數,再加上帶正負號的經過秒數;最後以向下取整(floor division)的方式,把總秒數重新拆解為天數與當日時刻,如此一來即使是負向偏移(跨越午夜、月份或年份的減算)也能得到正確有效的日期。最後再將 JDN 換算回格里曆的年、月、日,並直接由 JDN 推導出星期幾。
$$\begin{gathered} T_{\text{result}} = T_{\text{start}} + \text{Dir} \cdot \Delta \\[1.5em] \text{where}\quad \left\{ \begin{aligned} Y &= \text{Era} + \text{Year} \\ T_{\text{start}} &= \text{JDN}(Y,\,\text{Mon},\,\text{Day}) \cdot 86400 \\ &\quad + 3600\,\text{Hr} + 60\,\text{Min} + \text{Sec} \\ \Delta &= 86400\,\text{Days} + 3600\,\text{Hrs} \\ &\quad + 60\,\text{Mins} + \text{Secs} \end{aligned} \right. \end{gathered}$$
範例演算
起始時間為 2024-06-15 00:00:00,方向選「之後」,經過 0 天 11 小時 40 分 30 秒。2024-06-15 對應的 JDN 為 \(2{,}460{,}477\)。加上 \(42{,}030\) 秒後仍落在同一天,時刻變為 11:40:30。最終結果為 2024-06-15 11:40:30,當天為星期六。
常見問題
會處理閏年嗎?會。儒略日數的換算已自動套用完整的格里曆閏年規則。
可以做減算嗎?可以。選擇「之前(-)」,系統就會減去整段經過時間,並正確地跨越天、月、年向前回推。
時區和日光節約時間呢?本計算僅處理純粹的曆法時間點,不做任何時區或日光節約時間的調整,因此結果具有確定性、可重現。