Подключиться через MCP →

Введите расчет

Математическая формула

Реклама

Результатов

Всего дней в периоде (включительно)
1
дней
День недели Количество
Понедельники 0
Вторники 0
Среды 1
Четверги 0
Пятницы 0
Субботы 0
Воскресенья 0

Что умеет этот калькулятор

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

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

Как пользоваться

Выберите начальную и конечную даты, указав год, месяц и день. Для обычных дат оставьте календарь в режиме «Западный (н. э. / григорианский)». Дополнительно доступен режим японских эр (Мэйдзи, Тайсё, Сёва, Хэйсэй, Рэйва) — он добавлен для удобства: при его выборе введённый год трактуется как год эры и переводится в григорианский эквивалент перед всеми расчётами. Сама арифметика дат универсальна и не привязана к какой-либо стране.

Формула

Каждая дата переводится в порядковый номер дня. Количество дней с учётом обеих границ: всегоДней = серийныйНомерКонца − серийныйНомерНачала + 1. Поскольку в неделе семь дней, каждый день недели встречается не менее основа = всегоДней div 7 раз. Оставшиеся остаток = всегоДней mod 7 дней — это дополнительные вхождения; они распределяются подряд, начиная с дня недели стартовой даты. День недели для любой григорианской даты определяется по алгоритму Сакамото.

$$\text{Count}(w) = \left\lfloor \frac{N}{7} \right\rfloor + \bigl[\,(w - w_0) \bmod 7 < (N \bmod 7)\,\bigr]$$ $$\text{where}\quad \left\{ \begin{aligned} N &= (\text{Serial}_{\text{end}} - \text{Serial}_{\text{start}}) + 1 \\ \text{start} &= \text{Start Yr}/\text{Mo}/\text{Day} \\ \text{end} &= \text{End Yr}/\text{Mo}/\text{Day} \\ w_0 &= \text{weekday of start date} \end{aligned} \right.$$
Схема, показывающая разбиение общего числа дней на полные недели и остаток
Общее число дней делится на полные недели (по одному на каждый день недели) плюс остаток, добавляющий по одному к первым дням недели.

Разбор примера

С 01.01.2024 (понедельник) по 31.12.2024 (вторник): 2024 год високосный, поэтому всегоДней = 366. основа = 366 ÷ 7 = 52, остаток = 366 mod 7 = 2. Начиная с понедельника, первые два дня недели (понедельник и вторник) получают по +1. Результат: 53 понедельника, 53 вторника и по 52 каждого из остальных дней недели — в сумме как раз 366.

$$\text{всегоДней} = 366$$ $$\text{основа} = \left\lfloor \frac{366}{7} \right\rfloor = 52, \quad \text{остаток} = 366 \bmod 7 = 2$$

Частые вопросы

Учитываются ли обе крайние даты? Да — и начальная, и конечная даты входят в подсчёт. Один день (начало = конец) даёт итог 1.

Что если начальная дата позже конечной? Даты автоматически меняются местами, поэтому итог всегда положительный.

Какой календарь используется? Везде применяется пролептический григорианский календарь. Для современных дат он в точности совпадает с привычным гражданским календарём; для очень старых дат до 1582 года результаты могут отличаться от исторических юлианских записей.

Последнее обновление: