какие года считаются високосными
Високосные годы
Надеюсь, вы отлично встретили новый год, и сейчас у вас отличное праздничное настроение. По крайней мере у меня это именно так — мы не пили никакого алкоголя, и чокнулись в полночь бокалами с водой из пятилитровой канистры, поэтому мы проснулись, погуляли, и тут я вспомнил одно из вчерашних поздравлений с Новым годом:
— Ох, нифига себе, какой был экшен. Обязательно буду рассказывать внукам или напишу об этом потом книгу.
Итак, выше достаточно простой inline-способ определить количество дней в году (переменная year), который, по сути, полностью раскрывает их суть: в григорианском календаре високосными годами считаются те годы, порядковый номер которых либо кратен 4, но при этом не кратен 100, либо кратен 400. Иными словами, если год делится на 4 без остатка, но делится на 100 только с остатком, то он високосный, иначе — невисокосный, кроме случая, если он делится без остатка на 400 — тогда он всё равно високосный.
Например, 2013 год невисокосный, 1700, 1800 и 1900 — опять же невисокосные годы, а вот 2000, 2004, 2008 и 2012 — високосные.
Но что, если мы не помним, сколько дней в високосных (366 дней) и невисокосных (365 дней) годах, или просто хотим написать определение количества дней в году максимально быстро? Можно ли сделать так на Python? Конечно же, можно.
Итак, в Python есть модуль calendar. Он как раз отлично подходит для того, чтобы узнать, является ли тот или иной год високосным (или, например, сколько високосных годов в определённом интервале), определить количество дней в месяце, получить номер дня недели для определённой даты и так далее.
В частности, мы можем получить количество дней в каждом месяце года, и просто сложить.
Функция calendar.monthrange принимает номер года в качестве первого аргумента и номер месяца в качестве второго аргумента. Возвращает номер дня недели первого числа данного месяца и количество дней в данном месяце:
Соответственно, мы можем подсчитать общее количество дней для всех 12 месяцев, и получить таким образом количество дней для данного года:
Но если подумать о том, как именно выполняется эта строка, становится очевидно, что это решение очень неэффективно, если нужно посчитать количество дней для большого количества годов.
Проверяем с помощью модуля timeit.
На то, чтобы выполнить её 1 миллион раз, требуется 13.69 секунд, если import calendar делается один раз в начале. Если import calendar делается каждый раз, тогда 14.49 секунд.
Теперь попробуем другой вариант. Он требует знания того, сколько дней в високосных и невисокосных годах, но зато он очень короткий:
И, как легко догадаться, он уже намного быстрее: 0.83 секунд, включая import calendar, и 0.26 секунд, если import calendar делается один раз в начале.
Давайте также посмотрим, сколько требуется времени самому первому варианту, с «ручным» подходом: 0.07 секунд для 2012 и 2013 и 0.12 секунд для 2000 (думаю, всем понятно, откуда берётся такая разница в скорости для этих годов).
Получается, что это и есть самый быстрый вариант из этих трёх:
Конечно, в большинстве случаев вы можете использовать любой из этих вариантов — в конце концов, при определении количества дней в одном, двух, десяти или ста годах вы вряд ли почувствуете какую-либо разницу.
Пишите, оптимизируйте, улучшайте, тестируйте и считайте производительность — но не забывайте о читаемости исходников ваших программ.
С Новым годом! Удачи, счастья, радости и самосовершенствования в новом году.
Календарь високосных лет с 1600 по 2400 годы
Почему существуют високосные годы, и какой год считать таковым? Посмотрите на календарь високосных лет с 1600 по 2400 годы, плюс немного теории.
Год — это время, необходимое Земле для пути по орбите Солнца, которое длится ровно 365 дней, 5 часов, 48 минуты и 45,252 секунды, или около четверти суток дольше, чем наш календарный год.
Без високосных лет времена года в нашем календаре постоянно сдвигались бы. Чтобы астрономическая весна не начиналась по нашему календарю когда-нибудь в декабре и был введён високосный год.
Он сближает наш календарь с солнечным (астрономическим) календарём.
Для компенсации разницы между календарями каждые 4 года в февраль добавляется 29 число — високосный день. Такой год называется високосным.
Правило високосного года хорошо приближает современный (юлианский) календарь к солнечному (астрономическому), но тем не менее уже к 3200 году среднее отклонение нашего календаря от солнечного будет составлять около суток.
Календарь високосных лет
Здесь вы найдете все високосные года в виде простой таблицы:
Високосные годы 20 века
Високосные года 21 века
Когда похожей таблицы нет под рукой, вы сможете легко вычислить високосный год по следующему алгоритму.
Как определить, какой год високосный?
В астрономическом году 365,24219 суток. То есть 365 суток + 1/4 суток ≈ 365,25 суток.
Логично, что каждые 4 года получаем 1 дополнительные сутки, так как 4*0,25 ≈ 1 сутки.
Если рассматривать отклонение от 0,25 к 0,24219 в течении многих лет, можно утверждать, что оно относительно высокое. Поэтому существуют исключения в правилах вычисления високосных лет.
Високосный год не только должен быть кратен 4 (делиться на 4), но и:
Пример: 2000, 2400 и 2800 — високосные
Какой год является високосным?
Как видим, можно вычислить три признака високосного года:
Приведем несколько примеров:
1900 год високосный? Если нет, то почему?
Читатели статьи не оставили 1900 год без внимания. Мнения в комментариях разделились. Давайте разберёмся?
Список високосных лет с 2000 года
Какие года високосные, если считать с 2000 года?
Какой год будет високосным после 2018?
Последний високосный год был в 2016. 2018 и 2019 не являются високосными. Следующий високосный год наступит в 2020.
Написано:
«Год не является високосным, если он полностью делится и на 4, и на 100.»
Это, однако, противоречит Вашему же списку високосных лет. Например, годы 2000, 2400.
Следовало добавить: «Год не является високосным, если он полностью делится и на 4, и на 100, но не делится на 400.»
Вы очень внимательны. Спасибо за поправку, все верно)))
Переводила статью с немецкого и не учла эту важную деталь.
а с какого перепугу 1900 не является високосным? Високосный год наступает каждые 4 года, т.е. если на 4 делится — это високосный год. И больше не надо никаких делений на 100 или 400.
sharky:
25.03.2013 в 16:04
а с какого перепугу 1900 не является високосным? Високосный год наступает каждые 4 года, т.е. если на 4 делится — это високосный год. И больше не надо никаких делений на 100 или 400.
Вопросы задавать это нормально, а вот прежде чем утверждать что-то изучите матчасть. Земля делает оборот вокруг солнца за 365 суток 5 часов 48 минут 46 секунд. Как видите остаток не ровно 6 часов, а на 11 минут 14 секунд меньше. Это значит, что делая високосный год мы прибавляем лишнее время. Где-то за 128 лет накапливаются лишние сутки. Поэтому каждые 128 лет в одном из 4-х летних циклов високосный год делать не надо, чтобы избавиться от этих лишних суток. Но чтобы упростить, високосным не делают каждый 100-й год. Идея понятна? Хорошо. А как же тогда быть дальше, ведь лишний день прибавляется каждые 128 лет, а урезаем его каждые 100 лет? Да, мы отрезаем больше положенного, и это нужно когда-то вернуть.
Если первый абзац понятен и все еще интересно, тогда читаем дальше, но будет сложнее.
Приведенный мною расчет показывает что при нынешнем состоянии ошибка в одни сутки накопиться за 3200 лет, но вот что об этом пишет википедия:
«Ошибка в одни сутки по сравнению с годом равноденствий в григорианском календаре накопится примерно за 10 000 лет (в юлианском — примерно за 128 лет). Часто встречающаяся оценка, приводящая к величине порядка 3000 лет, получается, если не учитывать, что со временем изменяется количество суток в тропическом году и, кроме того, изменяется соотношение между продолжительностями времён года». Из той же википедии формула продолжительности года в сутках с дробями неплохо обрисовывает картину:
Год 1900 високосным не был, а 2000 был, причем особенный, потому что такой високосный бывает раз в 400 лет.
Благодарю вас за такой подробный комментарий. Подарили мне статью на блог, которая намного больше опубликованного поста)))
Спасибо.
Високосный год
Каждые 4 года мы сталкиваемся с тем, что в феврале вместо стандартных 28 дней бывает 29. Наступает високосный год. Это связано с тем, что Земля вращается вокруг солнца немного быстрее, чем за 365 дней. Для компенсации этого явления придуман и введен в практику високосный год, который продолжается 366 суток за счет добавления лишнего дня в феврале.
Когда високосный год, как определить
Способы определения достаточно просты и доступны любому человеку. Они не требуют какой-то серьезной математической подготовки:
1. Посмотреть в любом календаре, есть ли 29 февраля в исследуемом году.
2. Високосный год всегда делится на 4 без остатка. Предположим, 2012 год – високосный, поскольку 2012 : 4 = 503.00, то есть остаток от деления равен 0.
3. Можно посмотреть календарь на исследуемый год и сравнить его со следующим по дням недели. Если разбежка составит 1 день, то анализируемый временной интервал не является високосным – его длина 52 недели и 1 день, если разбежка 2 дня, то, соответственно, год високосный.
Да, существуют. Для более полного согласования астрономического и календарного года было принято решение не делать високосными те года, которые заканчиваются на 00, то есть начало каждого века. Но и здесь есть свое исключение: каждый 4-й из этих годов (заканчивающихся на 00 – 400, 800, 1200, 1600, 2000, 2400, …) также являются високосными.
Список високосных годов
1764, 1768, 1772, 1776, 1780, 1784, 1788, 1792, 1796, 1804, 1808, 1812, 1816, 1820, 1824, 1828, 1832, 1836, 1840, 1844, 1848, 1852, 1856, 1860, 1864, 1868, 1872, 1876, 1880, 1884, 1888, 1892, 1896, 1904, 1908, 1912, 1916, 1920, 1924, 1928, 1932, 1936, 1940, 1944, 1948, 1952, 1956, 1960, 1964, 1968, 1972, 1976, 1980, 1984, 1988, 1992, 1996, 2000, 2004, 2008, 2012, 2016, 2020, 2024, 2028, 2032,2036, 2040, 2044, 2048, 2052, 2056, 2060, 2064, 2068, 2072, 2080, 2084, 2088, 2092, 2096, 2104, 2108, 2112, 2116, 2120, 2124, 2128, 2132
История появления
Само понятие високосного года появилось в те времена, когда ученые доказали, что в астрономическом году 365 дней и еще приблизительно 5 часов и 49 минут. Случилось это при Юлии Цезаре, который слыл достаточно прогрессивным правителем. С тех пор к календарю стали добавлять 1 лишний день.
Древние римляне считали дни до начала следующего месяца, а мы определяем прошедшие от начала текущего месяца. Предположим, 22 февраля для нас 22 день месяца, а для римлян был 6-ой день до начала нового месяца. В високосный год в феврале было два 6-х дня. «Второй шестой» с латыни и дал название «високосный».
На следующем этапе был юлианский календарь, где високосным становился каждый третий год. Кстати, в наши дни именно по нему определяются праздники. Мы же пользуемся григорианским календарем, и у нас високосным является каждый четвертый год.
Суеверия и страхи
В народе принято считать, что високосные года весьма неудачны, а порой, трагичны. Плохим этот год стали считать еще римляне, у которых из-за «шестого дня» на один день увеличивался пост (длился до начала марта). Добавил мистики одиозный праздник «Касьянов день», который отмечали уже наши предки. Он был определен на 29 февраля.
Считается, что в високосный день крайне нежелательно кардинально менять привычный уклад жизни: жениться, переезжать, менять работу, заводить детей, особенно первого ребенка.
Однако церковь не придает этим датам особого значения и не считает их какими-то особенными. Да и практика показывает, что те же семьи, сформированные в високосный год, распадаются не чаще, нежели в обычный.
Список високосных лет: является ли этот год високосным или нет и когда будет следующий
високосный или нет?
Следующий високосный год:
Сколько дней в високосном году?
Один год состоит из 365 дней. Исключением являются високосные. Там 366 дней.
Сколько дней в високосном феврале?
Количество дней из года в год у всех месяцев неизменно. Кроме февраля. В високосный год у него 29 дней. Получается, что рожденные 29 февраля в високосный год празднуют свой день рождения раз в четыре года (большинство переносят на 1 марта, так как согласно суевериям заранее отмечать нельзя).
Календарь високосных лет
Какой год является високосным?
Пример расчёта по григориа́нскому календа́рю
Почему бывает високосный год и что это такое
Год — это отрезок времени, в течении которого Земля делает полный оборот вокруг Солнца. Проблема состоит в том, что она делает полный оборот не за полных 365 дней, а за 365 дней и 6 часов.
Чтобы не было такого, что согласно календарю стоит декабрь, а в лесу распускаются подснежники, примерно раз в 4 года к 28-ми дням февраля добавляется 1 день. 29-ый день февраля у римлян (т.к. введён Юлием Цезарем в Риме) называется «bis sextus» («Биссекстус»), что у греков звучит как «Виссекстус», а у нас после греческой обработки — «Високос». Следовательно, в году будет не 365 дней, а уже 366. Год с 366 днями называется високосным.
Средняя продолжительность года
12 комментариев:
Анонимный «Если есть необходимость расширить этот список, напишите, пожалуйста, в комментариях»
— да-да, за 4 года до окончания списка продлите его, пожалуйста NMitra Обязательно :)) Анонимный норм Анонимный но 1800 NMitra Извините, не поняла, что не так с 1800 Анонимный вы пропустили 1700,1800 и 1900 NMitra Да, вы правы, теперь я осознала свой промах. Разные страны переходили на Григорианский календарь в разное время. И для России это были високосные года. Спасибо! Статью поправила. Unknown Спасибо!Решил проверить училку,мало-ли,может перепутала 🙂
Анонимный Так, годы 1700, 1800 и 1900 не являются високосными, так как они кратны 100 и не кратны 400. Годы 1600 и 2000 — високосные, так как они кратны 400. Годы 2100, 2200 и 2300 — невисокосные NMitra Верно. Но! РСФСР, Эстония, Латвия, Литва, Грузия, Азербайджан, Армения, Румыния, Югославия, Греция, Турция, Египет, Китай перешли на григорианский календарь после 1901 года, а значит для них 1700, 1800, 1900 года являются високосными. Анонимный title>Список високосных лет: является ли этот год високосным или нет и когда будет следующий Примеры
Meta: В високосный год 366 дней. В феврале високосного года 29 дней. Вот удобный список високосных лет с поиском конкретного года.
На сайте есть уточнение: По григориа́нскому календа́рю (действующий на сегодняшний день; начиная с 1582 года страны стали переходить на него, в т.ч. Советская Россия в 1918 году [подробнее в Википедии]).
Так зачем вы продолжаете писать что 1700, 1800 и 1900 високосные? Они же не являются високосными, так как они кратны 100 и не кратны 400 NMitra Потому что для некоторых стран они являются високосными. Они помечены фиолетовым цветом с соответствующей пометкой. Угодить всем нет возможности, поэтому самым лучшим решением будет разъяснить ситуацию.
Какие года считаются високосными
Високосный год (лат. bis sextus — «второй шестой») — год в юлианском и григорианском календарях, продолжительность которого равна 366 дням — на одни сутки больше продолжительности обычного, невисокосного года. В юлианском календаре високосным годом является каждый четвёртый год, в григорианском календаре из этого правила есть исключения.
Год — условная единица измерения времени, которая исторически означала однократный цикл сезонов (весна, лето, осень, зима). В большинстве стран календарная продолжительность года равна 365 или 366 дням. В настоящее время год употребляется также в качестве временной характеристики обращения планет вокруг звёзд в планетарных системах, в частности Земли вокруг Солнца.
Календарный год в григорианском и юлианском календарях равен 365 суток в невисокосные годы, и 366 суток в високосные годы. Средняя же продолжительность года составляет 365,2425 суток для григорианского и 365,25 суток для юлианского календарей.
Календарный год в исламском календаре содержит 353, 354 или 355 суток — 12 лунных месяцев. Средняя продолжительность года — 354,37 суток, что меньше тропического года и поэтому мусульманские праздники «кочуют» по временам года.
Календарный год в еврейском календаре содержит 353, 354 или 355 суток в простом году и 383, 384 или 385 суток в високосном году. Средняя продолжительность года — 365,2468 суток, что близко к тропическому году.
Продолжительность тропического года (время между двумя весенними равноденствиями) составляет 365 суток 5 часов 48 минут 46 секунд. Различие в продолжительности тропического года и среднего юлианского календарного года (365,25 суток) составляет 11 минут 14 секунд. Из этих 11 минут и 14 секунд приблизительно за 128 лет складываются одни сутки.
По истечении столетий было замечено смещение дня весеннего равноденствия, с которым связаны церковные праздники. К XVI веку весеннее равноденствие наступало примерно на 10 суток раньше 21 марта, используемого для определения дня Пасхи.
Чтобы компенсировать накопившуюся ошибку и избежать подобного смещения в будущем, в 1582 году римский папа Григорий XIII провёл реформу календаря. Чтобы средний календарный год лучше соответствовал солнечному, было решено изменить правило високосных лет. По-прежнему високосным оставался год, номер которого кратен четырём, но исключение делалось для тех, которые были кратны 100. Отныне такие годы были високосными только тогда, когда делились ещё и на 400.
Иными словами, год является високосным в двух случаях: либо он кратен 4, но при этом не кратен 100, либо кратен 400. Год не является високосным, если он не кратен 4, либо он кратен 100, но при этом не кратен 400.
Сечас мы живем по юлианскому календарю (новый стиль), до революции жили по григорианскому (старый стиль). Разница между старым и новым стилями составляла в XVIII веке 11 суток, в XIX веке — 12 суток, в XX- XXI веках — 13 суток. В XXII веке эта разница будет составлять уже 14 суток. Григорианский календарь введён при Советской власти с 14 февраля 1918 (после 31 января шло уже не 1 февраля, а сразу 14-е). Последний високосный год был 2012, следующий будет 2016.
Замечание: Для большинства компьютерных и мобильных систем допустимыми являются даты с 13 декабря 1901, 20:45:54 GMT по 19 января 2038, 03:14:07 GMT. (Эти даты соответствуют минимальному и максимальному значению 32-битового целого со знаком). Для Windows допустимы даты с 01-01-1970 по 19-01-2038.