Сегодня Суббота,
20.04.2024 16:03

ДВ-сверка Регистр.
Выход Вход

      Главная

Вы вошли как

Гость

Группа: "Гости"

Приветствую Вас

Гость

 


Мой профиль

Подписка
«Ярославский агрокурьер»
на 2-е полугодие 2019

тел. редактора: 429-036

Индекс Цена Состав
П1134 450,60 АК
П3469 773,10 АК+ДВ
Альт-абон 190,00 АК
Эл. абон 250,00 АК+ДВ

АК - Основная газета
ДВ - Деловой вестник

Альт-абон - подписка и развозка редакции
Эл-абон - газета рассылается эл.почтой ПДФ-файлами
Архив 2004-2019
2004 2005 2006 2007
2008 2009 2010 2011
2012 2013 2014 2015
2016 2017 2018 2019

На годы, выделенные цветом, доступ закрыт.
Надо оформлять платную подписку
(50 руб - за любой заказанный месяц)

Скач. кварт. календарь
2015 к1 к2 к3 к4
2016 к1 к2 к3 к4
2017 к1 к2 к3 к4
2018 к1 к2 к3 к4
2019 к1 к2 к3 к4
Форма входа
Наш опрос
Оцените мой сайт
Всего ответов: 80

kln

Источник: http://www.genon.ru/GetAnswer.aspx?qid=0fecaff5-4fd3-4c96-ac83-4b80e91d4afe

 

Когда под рукой нет календаря, для того чтобы определить, какой сегодня день недели, можно воспользоваться следующим алгоритмом:

 

1. Обозначим число, месяц и год соответственно dm и y.

2. Если m ≤ 2 (т.е. месяц январь или февраль), то год уменьшим на 1, а число увеличим на 3:

    y:= y–1; 

    d:= d+3;

3. Теперь номер дня недели (w) вычисляется по следующей формуле:

    w:= 1 + [d + y + y/4 – y/100 + y/400 + (31m+10)/12] mod 7;

(все операции деления — целочисленные, т.е. берется целая часть частного;mod — операция получения остатка от деления).

 

Результатом будет целое число в диапазоне от 1 до 7, соответствующее дням недели от воскресенья до субботы (1 — понедельник, 2 — вторник, 3 — среда, 4 — четверг, 5 — пятница, 6 — суббота, 7 — воскресенье).

 

Данный алгоритм получен модификацией широко известного алгоритма вычсиления дня недели.

 

Преимущества модифицированного алгоритма:

  • не требует использования вспомогательных переменных;
  • удобен в языках программирования, использующих передачу параметров по значению;
  • дает результат, соответствующий русской традиции нумерации дней недели, начиная с понедельника. 

Алгоритм работает в пределах применимости григорианского календаря.

 

Примеры:

 

1. Текущая дата: 27.09.2009

d = 27;

m = 9;

y = 2009;

Поскольку m > 2, сразу переходим к п.3

w = 1 + [27 + 2009 + 2009/4 – 2009/100 + 2009/400 + (31*9+10)/12] mod 7 =

   = 1 + [27 + 2009 + 502 – 20 + 5 + 24] mod 7 = 1 + 6 = 7 — воскресенье.

 

2. Текущая дата: 31.01.1968

d = 31;

m = 1;

y = 1968;

Поскольку m ≤ 2, введем коррекцию:

y = 1967;

d = 34;

Теперь вычисляем:

w = 1 + [34 + 1967 + 1967/4 – 1967/100 + 1967/400 + (31*1+10)/12] mod 7 =

   = 1 + [34 + 1967 + 491 – 19 + 4 + 3] mod 7 = 1 + 2= 3 — среда.

 

Мини-чат
200
Телефоны
Даты и События
Поиск

Copyright MyCorp © 2024
Создать бесплатный сайт с uCoz