Формула вычисления дня недели. Какой день недели был в день рождения? Значение и магические способности. Что нужно запомнить

Чтобы без помощи календаря определить день недели для любой даты, не обязательно быть гением или ясновидящим. Достаточно запомнить пару формул.

Для определения дня недели по дате нужно использовать формулу:

день недели = (день + код месяца + код года) % 7

Пояснения

Код месяца

Коды месяца и года — это, пожалуй, самое трудное в формуле.

Код месяца нужно просто запомнить.

  • 1 — январь, октябрь;
  • 2 — май;
  • 3 — август;
  • 4 — февраль, март, ноябрь;
  • 5 — июнь;
  • 6 — декабрь, сентябрь;
  • 0 — апрель, июль.

Чтобы запоминать подобные нелогичные данные, проще всего прибегать к ассоциациям.

Код года

Код года в XXI веке рассчитывается по формуле:

код года = (6 + последние две цифры года + последние две цифры года / 4) % 7

Оператор «/» означает неполное частное, то есть целую часть результата деления.

  • 2015 год: (6 + 15 + 15 / 4) % 7 = (6 + 15 + 3) % 7 = 25 % 7 = 4;
  • 2016 год: (6 + 16 + 16 / 4) % 7 = (6 + 16 + 4) % 7 = 26 % 7 = 5;
  • 2017 год: (6 + 17 + 17 / 4) % 7 = (6 + 17 + 4) % 7 = 27 % 7 = 6;
  • 2026 год: (6 + 26 + 26 / 4) % 7 = (6 + 26 + 6) % 7 = 38 % 7 = 3.

Если вы захотите узнать день недели для даты другого века, придётся учитывать ещё значения века (6, 4, 2, 0). Вместо 6 для ближайших веков будут следующие значения:

  • 16хх: 6;
  • 17хх: 4;
  • 18хх: 2;
  • 19хх: 0;
  • 20хх: 6;
  • 21хх: 4 и так далее.

Здесь просто: % — оператор остатка при делении.

Расшифровка результата

Старт отсчёта — выходные, то есть: 0 — суббота, 1 — воскресенье и так далее.

Примеры расчёта

  • 25 июля 2016 года: (25 + 0 + 5) % 7 = 30 % 7 = 2 — понедельник;
  • 8 августа 2017 года: (8 + 3 + 6) % 7 = 17 % 7 = 3 — вторник;
  • 5 января 2127 года:
    • (4 + 27 + 27 / 4) % 7 = (4 + 27 + 3) % 7 = 34 % 7 = 6 — код года;
    • (5 + 1 + 6) % 7 = 10 % 7 = 5 — четверг.

Конечно, расчёт дня недели по дате в уме — это не жизненно важный навык в век технологий. Но это нетривиальное упражнение для всех, кто любит развивать свою память и проводить операции с цифрами.

UPD. К сожалению, эта формула не совсем верно работает для високосного года. До 29 февраля включительно к формуле придётся прибавить ещё единицу, чтобы получить верный день. Спасибо читателям, что обнаружили ошибку.

Определение дня недели по дате | Онлайн-тренажёр

Упражнение считается выполенным после 7 правильных ответов

Норма выполнения упражнения - 2 минуты

Для успешного выполнения упражнения ознакомьтесь с теорией

Определение дня недели по дате | Теория

Определить день недели по дате можно следующим образом:

  1. вычислить код дня недели, сложив порядковый номер дня в месяце, код месяца и код года, а затем сократить полученную сумму (если она превышает 6) до числа от 0 до 6 путём вычитания необходимого количества семёрок (или, другими словами, путём вычитания соответствующего числа, кратного семи, которое может равняться 7(7x1), 14(7x2), 21(7x3), 28(7x4), 35(7x5), 42(7x6) и т.д.);
  2. определить день недели по коду дня недели.

Дни недели и их коды

Месяцы и их коды

Для запоминания соответствий между месяцами и их кодами можно использовать мнемонические техники.

Например, январь легко ассоциировать с числом 6, так как в слове «январь» 6 букв, а февраль можно сопоставить с числом 2 на основании того, что февраль является вторым по счёту месяцем в году. Но не забывайте уменьшать код января и февраля на единицу, если год является високосным.

Можно использовать и свои личные ассоциации. Например, если в марте у вас родился второй ребёнок, то вам будет легко ассоциировать март с числом 2.

Годы XXI века и их коды *

Год К. Год К. Год К. Год К.
2000 0 2025 3 2050 6 2075 2
2001 1 2026 4 2051 0 2076 4
2002 2 2027 5 2052 2 2077 5
2003 3 2028 0 2053 3 2078 6
2004 5 2029 1 2054 4 2079 0
2005 6 2030 2 2055 5 2080 2
2006 0 2031 3 2056 0 2081 3
2007 1 2032 5 2057 1 2082 4
2008 3 2033 6 2058 2 2083 5
2009 4 2034 0 2059 3 2084 0
2010 5 2035 1 2060 5 2085 1
2011 6 2036 3 2061 6 2086 2
2012 1 2037 4 2062 0 2087 3
2013 2 2038 5 2063 1 2088 5
2014 3 2039 6 2064 3 2089 6
2015 4 2040 1 2065 4 2090 0
2016 6 2041 2 2066 5 2091 1
2017 0 2042 3 2067 6 2092 3
2018 1 2043 4 2068 1 2093 4
2019 2 2044 6 2069 2 2094 5
2020 4 2045 0 2070 3 2095 6
2021 5 2046 1 2071 4 2096 1
2022 6 2047 2 2072 6 2097 2
2023 0 2048 4 2073 0 2098 3
2024 2 2049 5 2074 1 2099 4

Эту таблицу не обязательно запоминать. Код года для XXI века (2000 – 2099 гг.) можно вычислить следующим образом:

  1. представить год в виде выражения: 2000 + X, где X – число из двух последних цифр года;
  2. разделить X на 4 и отбросить остаток;
  3. добавить X к результату пункта 2;
  4. если результат пункта 3 больше шести, то вычесть из него наибольшее кратное семи (но не превосходящее результат пункта 3) число.

Например, для 2029 года: 1) 2029 = 2000 + 29; 2) 29 / 4 = 7(остаток отброшен); 3) 7 + 29 = 36; 4) 36 - 35(7x5) = 1

порядковый день в месяце = 5;

код месяца = 5;

код года: 1) 2018 = 2000 + 18; 2) 18 / 4 = 4(остаток отброшен); 3) 4 + 18 = 22; 4) 22 - 21(7x3) = 1

(порядковый день в месяце + код месяца + код года) = 5 + 5 + 1 = 11

Так как полученная сумма превышает 6, то сокращаем её до числа, не превышающего 6, путём вычитания соответствующего кратного семи числа: 11 - 7(7x1) = 4

Ответ: четверг (код дня недели = 4)

порядковый день в месяце = 26;

код месяца = 2;

код года: 1) 2039 = 2000 + 39; 2) 39 / 4 = 9(остаток отброшен); 3) 9 + 39 = 48; 4) 48 - 42(7x6) = 6

(порядковый день в месяце + код месяца + код года) = 26 + 2 + 6 = 34

Так как полученная сумма превышает 6, то сокращаем её до числа, не превышающего 6, путём вычитания соответствующего кратного семи числа: 34 - 28(7x4) = 6

Ответ: суббота (код дня недели = 6)

Для определения дня недели по датам XX века необходимо сместить код годов XXI века вперёд на 1 день.

порядковый день в месяце = 12;

код месяца = 1;

код года: 1) 1953 = 1900 + 53; 2) 53 / 4 = 13(остаток отброшен); 3) 13 + 53 = 66; 4) 66 - 63(7x9) = 3

Так как мы имеем дело с датой XX века, то прибавляем к коду года единицу: 3 + 1 = 4

(порядковый день в месяце + код месяца + код года) = 12 + 1 + 4 = 17

Так как полученная сумма превышает 6, то сокращаем её до числа, не превышающего 6, путём вычитания соответствующего кратного семи числа: 17 - 14(7x2) = 3

Ответ: среда (код дня недели = 3)

* В обычном (не високосном году) 365 дней (52 полных недели + 1 день). Поэтому в такой год, относительно предыдущего, день недели смещается на 1 день вперёд.

В високосном году 366 дней (52 полных недели + 2 дня). Поэтому в такой год, относительно предыдущего, день недели смещается на 2 дня вперёд. Если быть точнее, то дополнительное смещение (за счет того, что год – високосный) происходит после окончания февраля месяца. Поэтому для января и февраля високосного года (когда смещение ещё не произошло) код месяца уменьшен на единицу по сравнению с январём и февралём обычного (не високосного) года.

Доброго времени суток друзья!

Эту статью я посвятил теме, как определить в Excel день недели по дате. Очень часто с этим вопросом сталкиваются по заработной плате и специалисты отдела кадров, хотя и решений вопросов, когда надо знать припадает ли данное число на рабочий день недели или нет, достаточно много. К этим задачам можно отнести расчёт больничного листа, определения праздничных дней, определения отпускных дней, да и, впрочем, еще много задач где нужно определить в Excel день недели по дате.

Определить день неделиможно несколькими способами и в этой статье мы рассмотрим 3 варианта:

С помощью пользовательского формата

Очень простой способ определить день недели по дате, делается это следующим образом:

  • выделяете , в которых хотите внести изменения в отображении даты;
  • вызываете контекстное меню правой кнопкой мыши и выбираете пункт «Формат ячеек» ;
  • в появившемся окне выбираете вкладку «Число» , в разделе «Числовые форматы» вам нужно выбрать пункт «(все форматы)» и в поле тип внести нужный вам формат даты.

Сами форматы данных можно разделить на 2 типа: полный и сокращенный .

  • Полный формат обозначаеться полным названием дня недели или месяца (к примеру, среда, четверг, и т.д.), полный формат указывается «ДДДД» — для дней недели, «ММММ» — для месяцев.
  • Сокращенный формат отображается только двумя буквами (к примеру, Ср, Чт, Пт, и т.д.) и для этого указывается формат «ДДД» — для дней недели, «МММ» — для месяцев.

С помощью функции ТЕКСТ

В этом случае мы будем использовать встроенную , для того чтобы определить в Excel день недели по дате. Эта функция предназначена, чтобы форматировать число в ячейке и преобразовать его в текст.
Используя эту функцию, вы первым значением указываете источник данных, а потом указываете формат преобразования данных. Формат вы указываете сокращенный или полный , как я описал выше в первом пункте.

Орфография формулы выглядит так:

=ТЕКСТ (А1;«дддд») , формула возвращает текстовое значение дня недели.

С помощью функции ДЕНЬНЕД

Третий вариант узнать день недели по дате, это с помощью функции ДЕНЬНЕД, которая относится к группе «Дата и время» , там вы ее и найдете. Эта функция возвращает число от 1 до 7, что соответствуют дню недели.
Формула выглядит так:

=ДЕНЬНЕД(А1;2) , где:

  • «А1 » – это адрес ячейки где дата в числовом формате,
  • «2 » – это число которое определяет тип возвращаемого значения (существует 3 типа: 1 или отсутствует – возвращает число от 1 (воскресенье) до 7 (суббота), 2 – от 1 (понедельник) до 7 (воскресенье) и 3 – от 0 (понедельник) до 6 (воскресенье), нам привычней всего 2 тип).

Думаю вам станет интересной статья « » в ней вы найдете полезные советы и примеры при работе с датами.

А на этом у меня всё! Я очень надеюсь, что что тема как определить в Excel день недели по дате, была раскрыта и стала вам полезной. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!

Одно из самых простых и действенных упражнений для тренировки памяти в любом возрасте – это устный счет. Можно придумать много различных вариантов тренировки устного счета, но здесь очень важным моментом выступает интерес к данным упражнениям и результату вычислений.

Предлагаем для тренировки упражнение по вычислению дня недели по конкретной дате.

С одной стороны, это может пригодиться в конкретной ситуации, чтобы быстро определить в какой день недели родились Вы или Ваши знакомые, или в какой день недели был Ваш предыдущий День рождения или будет следующий День рождения. А может и немного удивить вашего собеседника, сообщив ему, что он родился в какой-то конкретный день недели.

С другой стороны, это не простое упражнение только на сложение или вычитание. Здесь нужно будет в уме, и делить, и складывать, и подставлять определенные числа вместо значений месяца. Переходим к алгоритму такого вычисления.

ВЫЧИСЛЕНИЕ ДНЯ НЕДЕЛИ ПО ДАТЕ

Рассмотрим сначала четыре основных параметра для расчетов.

Возьмем дату — 20.11.1957 года

Годовой индекс рассчитывается таким образом, что две последние цифры года делятся на 12. Например, из года 1957 берется число 57. Это число де­лится на 12, получается 4 и 9 в остатке.

Остаток делится на 4. В нашем при­мере получается остаток 9, который при делении на 4 дает 2 и 1 в остатке, однако здесь остаток не учитывается.

Три полученных числа складываются. Итак, 4 плюс 9 плюс 2, получится 15.

Каждому месяцу присваивается свой индекс, который просто нужно запомнить.

Месяц | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |

———————————————————————————-

Индекс | 6 | 2 | 2 | 5 | 0 | 3 | 5 | 1 | 4 | 6 | 2 | 4 |

Для годов, начинающихся с «одна тысяча девятьсот…» прибавляется + 1

Для годов, начинающихся с «две тысячи…» ничего не прибавляется

Еще есть дополнительное правило для високосных годов, которые можно уз­нать по тому, что две последние цифры года без остатка делятся на 4.

Если исход­ная дата относится к январю или февралю високосного года, тогда из итогового числа необходимо отнять – 1

Рассмотрим несколько конкретных примеров.

1. Вычислим день недели для даты 20.11.1957 года

Сложим все индексы:

Индекс года — 15 (4+9+2)

Индекс месяца – 2

Просто дата – 20

Индекс века — 1

Итак, 15 плюс 2 плюс 20 плюс 1, получится 38.

Результат делится на 7, в нашем случае 38 делить на 7 равно 5 и 3 в ос­татке.

Неделя начинается с понедельника, это число 1, а число 3 соответствует среде.

Итого: 20.11.1957 года – это среда.

2. Вычислим день недели для даты 10.02.1928 года

Сложим все индексы:

Индекс года – 7 (2+4+1)

Индекс месяца – 2

Просто дата – 10

Индекс високосного года – (-1)

Индекс века — 1

Итак, 7 плюс 2 плюс 10 плюс 1 минус 1, получится 19.

Неделя начинается с понедельника, это число 1, а число 5 соответствует пятнице.

Итого: 10.02.1928 года – это пятница.

3. Вычислим день недели для даты 15.06.2012 года

Сложим все индексы:

Индекс года — 1

Индекс месяца – 3

Просто дата – 15

Индекс века — 0

Итак, 15 плюс 3 плюс 1, получится 19.

Результат делится на 7, в нашем случае 19 делить на 7 равно 2 и 5 в ос­татке.