| 日付 | 2024-12-12 |
|---|---|
| 序数日付 | 2024-347 |
_-_clock_board_detail.jpg/500px-Cygnus_1_releasing_seen_from_Mission_Control_(cropped)_-_clock_board_detail.jpg)
序数日付は、通常、年と序数(1 月 1 日から始まる)から構成される暦の日付で、1 日の倍数(年間通算日または序数日(序数日または日数とも呼ばれる) と呼ばれる) を表します。日付の 2 つの部分は、 ISO 8601 序数日付形式に準拠するために、「YYYY-DDD」としてフォーマットできます。年は、文脈によって暗示される場合は省略されることがあります。日は、 1 日の小数部を含むように整数から一般化される場合があります。
命名法
序数日付は、かつて「ユリウス日」またはJD、あるいはJDATEと呼ばれていたものの推奨される名前であり、古いプログラミング言語やスプレッドシート ソフトウェアで今でも見られます。古い名前は、以前使用されていた「ユリウス日数」またはJDNと呼ばれる以前の日付システムと混同されやすいため、非推奨となっています。このシステムは天文学や一部の歴史計算で今でも広く使用されています。
米軍は、年と日数(1年は365日または366日)を示す「ユリウス暦形式」と呼ばれるシステムを使用することがあります[1]。たとえば、「1999年12月11日」は、「1999年345日目」として「1999345」または「99345」と表記されます[2] 。
計算
1 年内の通算日の計算は、ユリウス日などの基準日からの通算日を計算する作業の一部です。また、曜日を計算する作業の一部でもありますが、この目的のために 7 を法とする簡略化を行うことができます。
以下のテキストでは、序数O を計算するためのいくつかのアルゴリズムが紹介されています。入力は、グレゴリオ暦またはユリウス暦の日付の年、月、日を表す整数y、m、およびdです。
単純な方法
序数を計算する最も単純な方法は、定義に従って経過したすべての日数を数えることです。
- Oを0とします。
- i = 1 .. m - 1から、使用されているカレンダーに従って閏年を考慮しながら、i月の長さをOに追加します。
- Oにdを加えます。
同様に簡単なのは、参照されているようなルックアップテーブルの使用です。[3]
ゼラーのような
月の長さの表は、ツェラーの合同式における月の長さの変化をエンコードする方法に従って置き換えることができます。ツェラーと同様に、m ≤ 2 の場合、 m はm + 12に変更されます。月数mに対して、前の月の合計日数は⌊(153 * ( m − 3) + 2) / 5⌋に等しいことが示されます (以下を参照) 。その結果、3 月 1 日を基準とする序数はO Mar = ⌊(153 × ( m − 3) + 2) / 5⌋ + dになります。
この式は、31-30-31-30-31 という固定パターンが 2 回繰り返されるため、3 月から 1 月までの連続する 5か月の合計日数が 153 日になるという事実を反映しています。これは、ツェラーの合同における月オフセット (7 を法とする同じシーケンス) のエンコードに似ています。153/5が 30.6 の場合、シーケンスは目的の周期 5 で目的のパターンで振動します。
3 月 1 日を基準とした序数から 1 月 1 日を基準とした序数に変更するには、次のようにします。
- m ≤ 12(3月から12月)の場合、 O = O Mar + 59 + isLeap( y )となります。ここで、 isLeap は、入力が閏年かどうかに応じて 0 または 1 を返す関数です。
- 1 月と 2 月には、次の 2 つの方法を使用できます。
- 簡単な方法は、 O Marの計算をスキップして、1 月の場合はO = d、 2 月の場合はO = d + 31を直接計算することです。
- より冗長性の少ない方法は、O = O Mar − 306を使用することです。ここで、306 は 3 月から 12 月までの日付の数です。これは、数式によって 1 月の月の長さが 31 と正しく返されるという事実を利用しています。
「Doomsday」のプロパティ:
と与える
n = 2、3、4、5、6、つまり4/4、6/6、8/8、10/10、12/12の間で、 連続した差は63(9週間)になります。
そして与える
mとdを入れ替える と
n = 2 (5/9 と 9/5 の差) およびn = 3 (7/11 と 11/7 の差) の場合には、差は 119 (17 週間) になります。
テーブル
たとえば、4 月 15 日の序数は、平年では90 + 15 = 105となり、閏年では91 + 15 = 106 となります。
月日
月と日の数字は次のように表される。
この用語は序数日付 に置き換えることもできます。
- 平年100日目:
- 4月10日。
- 平年200日目:
- 7月19日。
- 閏年の300日目:
- 11月5日=10月26日(31日-5日)。
ヘルパー変換表
参照
参考文献
- ^ Hynes, John. 「時刻形式と標準の概要」www.decimaltime.hynes.net 。 2011 年 2 月 9 日閲覧。
- ^ 「国際標準の日付と時刻の表記法」。ケンブリッジ大学コンピューターサイエンス技術学部。 2024年5月1日閲覧。
- ^ 「さまざまな暦日の序数表」。2021年4月8日閲覧。
