Порядковая дата
![]() | Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Июль 2019 г. ) |
Дата | 2024-08-02 |
---|---|
Порядковая дата | 2024-215 |

Порядковая дата — это календарная дата , обычно состоящая из года и порядкового номера в диапазоне от 1 до 366 (начиная с 1 января), представляющая кратное дню число , называемое днем года или порядковым номером дня (также известным как порядковый номер дня). день или номер дня ). Две части даты могут быть отформатированы как «ГГГГ-ДДД» в соответствии с порядковым форматом даты ISO 8601 . Иногда год может быть опущен, если это подразумевается контекстом; день можно обобщить из целых чисел, включив десятичную часть, представляющую долю дня.
Номенклатура
[ редактировать ]Порядковая дата — это предпочтительное название того, что раньше называлось « юлианской датой » или Джей Ди или JDATE , который все еще встречается в старых языках программирования и программах для работы с электронными таблицами. Старые имена устарели, потому что их легко спутать с более ранней системой датирования, называемой « числом юлианского дня » или «числом дня по юлианскому календарю». JDN , который использовался ранее и остается повсеместно используемым в астрономических и некоторых исторических расчетах.
Расчет
[ редактировать ]![]() | Возможно, этот раздел содержит оригинальные исследования . ( Август 2019 г. ) |
Вычисление порядкового дня в течение года является частью расчета порядкового дня на протяжении многих лет от исходной даты , такой как юлианская дата. Это также часть расчета дня недели , хотя для этой цели можно сделать упрощения по модулю 7.
В следующем тексте несколько алгоритмов расчета порядкового дня O. представлены В качестве входных данных используются целые числа y , m и d для года, месяца и дня даты по григорианскому или юлианскому календарю.
Тривиальные методы
[ редактировать ]Самый тривиальный метод расчета порядкового дня предполагает подсчет всех прошедших дней согласно определению:
- Пусть О будет 0.
- Из i = 1 .. m - 1 добавьте продолжительность месяца i к O , учитывая високосный год в соответствии с используемым календарем.
- Добавьте d к O.
Столь же тривиальным является использование справочной таблицы, такой как упомянутая. [1]
Зеллер-подобный
[ редактировать ]Таблицу длин месяцев можно заменить, следуя методу кодирования вариации длин месяцев в сравнении Целлера . Как и в Целлере, m меняется на m + 12, если m ≤ 2 . Можно показать (см. ниже), что для месяца с номером m общее количество дней предыдущих месяцев равно ⌊(153 * ( m − 3) + 2)/5⌋ . В результате порядковый номер дня от 1 марта равен O Mar = ⌊(153 × ( m − 3) + 2) / 5⌋ + d .
Формула отражает тот факт, что любые пять последовательных месяцев в диапазоне с марта по январь имеют общую продолжительность 153 дня из-за фиксированного шаблона 31–30–31–30–31, повторяющегося дважды. Это похоже на кодирование смещения месяца (которое будет той же последовательностью по модулю 7) в сравнении Целлера. Как 153/5 30,6 , равно последовательность колеблется по нужному шаблону с нужным периодом 5.
Чтобы перейти от порядкового дня с 1 марта к порядковому дню с 1 января:
- Для m ≤ 12 (с марта по декабрь), O = O Mar + 59 + isLeap( y ) , где isLeap — функция, возвращающая 0 или 1 в зависимости от того, является ли вход високосным годом.
- Для января и февраля можно использовать два метода:
- Тривиальный метод — пропустить расчет O Mar и сразу перейти к O = d для января и O = d + 31 для февраля.
- Менее избыточный метод — использовать O = O Mar − 306 , где 306 — количество дат с марта по декабрь. При этом используется тот факт, что формула правильно дает длину месяца 31 для января.
Свойства « Судного дня »:
С и дает
давая последовательные различия 63 (9 недель) для n = 2, 3, 4, 5 и 6, т. е. между 4/4, 6/6, 8/8, 10/10 и 12/12.
и дает
и с м и д поменялись местами
что дает разницу 119 (17 недель) для n = 2 (разница между 5/9 и 9/5), а также для n = 3 (разница между 7/11 и 11/7).
Стол
[ редактировать ]Ко дню | 13 Ян | 14 февраль | 3 Мар | 4 апрель | 5 Может | 6 июнь | 7 июль | 8 август | 9 Сентябрь | 10 октябрь | 11 ноябрь | 12 декабрь | я |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Добавлять | 0 | 31 | 59 | 90 | 120 | 151 | 181 | 212 | 243 | 273 | 304 | 334 | 3 |
Високосные годы | 0 | 31 | 60 | 91 | 121 | 152 | 182 | 213 | 244 | 274 | 305 | 335 | 2 |
Алгоритм |
Например, порядковая дата 15 апреля равна 90+15=105 в невисокосном году и 91+15=106 в високосном .
Месяц–день
[ редактировать ]![]() | Возможно, этот раздел содержит оригинальные исследования . ( Август 2019 г. ) |
Номер месяца и числа задаются формулой
термин также можно заменить на с порядковая дата.
- 100-й день високосного года:
- 10 апреля.
- 200-й день високосного года:
- 19 июля.
- 300-й день високосного года:
- Ноябрь – 5 = 26 октября (31 – 5).
Вспомогательная таблица преобразования
[ редактировать ]слово. дата | общий год | прыгнуть год |
---|---|---|
001 | 1 янв. | |
010 | 10 января | |
020 | 20 января | |
030 | 30 января | |
032 | 1 фев | |
040 | 9 фев | |
050 | 19 февраля | |
060 | 1 мар | 29 февраля |
061 | 2 мар | 1 мар |
070 | 11 марта | 10 марта |
080 | 21 марта | 20 марта |
090 | 31 марта | 30 марта |
091 | 1 апр | 31 марта |
092 | 2 апр | 1 апр |
100 | 10 апр. | 9 апр. |
слово. дата | комм. год | прыгнуть год |
---|---|---|
110 | 20 апр. | 19 апр. |
120 | 30 апр. | 29 апр. |
121 | 1 мая | 30 апр. |
122 | 2 мая | 1 мая |
130 | 10 мая | 9 мая |
140 | 20 мая | 19 мая |
150 | 30 мая | 29 мая |
152 | 1 июн | 31 мая |
153 | 2 июн | 1 июн |
160 | 9 июн | 8 июн |
170 | 19 июня | 18 июня |
180 | 29 июня | 28 июня |
182 | 1 июл | 30 июня |
183 | 2 июл | 1 июл |
190 | 9 июл | 8 июл |
слово. дата | комм. год | прыгнуть год |
---|---|---|
200 | 19 июля | 18 июля |
210 | 29 июля | 28 июля |
213 | 1 авг. | 31 июля |
214 | 2 авг. | 1 авг. |
220 | 8 авг. | 7 авг. |
230 | 18 августа | 17 августа |
240 | 28 августа | 27 августа |
244 | 1 сен | 31 августа |
245 | 2 сен | 1 сен |
250 | 7 сен | 6 сен |
260 | 17 сен | 16 сен |
270 | 27 сен | 26 сен |
274 | 1 окт. | 30 сен |
275 | 2 окт. | 1 окт. |
280 | 7 окт. | 6 окт. |
слово. дата | комм. год | прыгнуть год |
---|---|---|
290 | 17 октября | 16 октября |
300 | 27 октября | 26 октября |
305 | 1 ноя | 31 октября |
306 | 2 ноя | 1 ноя |
310 | 6 ноя | 5 ноя |
320 | 16 ноября | 15 ноября |
330 | 26 ноября | 25 ноября |
335 | 1 дек. | 30 ноября |
336 | 2 дек. | 1 дек. |
340 | 6 дек. | 5 дек. |
350 | 16 декабря | 15 декабря |
360 | 26 декабря | 25 декабря |
365 | 31 декабря | 30 декабря |
366 | — | 31 декабря |
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Таблица порядкового номера дня для различных календарных дат» . Проверено 8 апреля 2021 г.