Тема для тих, кому до вподоби ідея використання календарів за попередні роки.
У когось, приміром, є старі календарі, з якими пов'язані приємні спогади, чи хороші дизайнерські настінні календарі,яким вже вийшов час. Для більшості, мабуть, не сюрприз, що їх можна використати, адже календарі повторюються: для невисокосних років – раз на 11 або (рідше) 6 років, для високосних – раз на 28 років.
Особисто мене дуже зацікавила ідея календарного циклу, і я створив інтернет-сторінку, на якій кожен, хто бажає, може ввести номер року та отримати список років (від 1901 до 2100), календар яких є таким самим.
У когось, приміром, є старі календарі, з якими пов'язані приємні спогади, чи хороші дизайнерські настінні календарі,
Особисто мене дуже зацікавила ідея календарного циклу, і я створив інтернет-сторінку, на якій кожен, хто бажає, може ввести номер року та отримати список років (від 1901 до 2100), календар яких є таким самим.
Щоб календарі за два певні роки були однаковими, достатньо, щоб збігались два параметри: 1) високосність; 2) день тижня. Далі створюється цикл, який ітерує через весь діапазон років, і вибирає ті, які співпадають.
Для своєї сторінки я визначаю високосність та перший день тижня року ось цими методами:
Для своєї сторінки я визначаю високосність та перший день тижня року ось цими методами:
JavaScript:
function getDayOfWeekJan1(year) {
const dw1Jan = [5, 7, 1, 2, 3, 5, 6, 7, 1, 3, 4,
5, 6, 1, 2, 3, 4, 6, 7, 1, 2, 4, 5, 6, 7, 2, 3, 4];
return dw1Jan[year % 28];
}
function isYearLeap(year) {
if (year % 4 !== 0) {
return false;
} else {
return (year % 100 !== 0) ? true : year % 400 === 0;
}
}
Причина: відредагував лінк
Останнє редагування: