Слайд 2
Цель
Узнать, как устроен вечный календарь и создать работающую
модель вечного календаря.
Слайд 3
Задачи
Изучить историю возникновения вечного календаря
Рассмотреть разные виды вечных
календарей , и принцип по которому они сделаны
Найти алгоритм
построения вечного календаря
Пользуясь этим алгоритмом, создать компьютерную модель вечного календаря
Слайд 4
Основы
Календарь — (от лат. Calendarium – долговая книга)
система счета больших промежутков времени, основанная на видимых движениях
небесных тел. Циклическое движение таких астрономических объектов как Земля, Солнце и Луна имеет главное значение для построения и понимания календарей.
Слайд 5
Из истории
В году 365 с четвертью дней. А
календарь должен содержать целое число. Если объявить год, как
это сделали римляне до Юлия Цезаря, состоящим из 365 дней, то астрономический год с календарным будет различаться. За 4 года набежит день. В 46 году до н.э. при Юлии Цезаре астроном Созиген предложил календарь, который стал называться юлианским. Он вводил систему високосов: 3 года по 365 дней, а 4-й - по 366.
Слайд 6
Из истории
Это почти соответствовало астрономическому календарю. Но астрономический
год составляет не 365 дней с четвертью, а немного
меньше - 365,2422 дня. Этот хвостик за тысячелетия накрутил довольно много дней. Первыми это заметили церковники, увидев, что Пасха у них "поехала". За 400 лет набегало 3 дня. В 1582 году Папа Григорий XIII издал буллу о реформе календаря. Единственное отличие григорианского календаря от юлианского в том, что на 400 лет в нем не 100 високосных лет, а 97.
Слайд 7
вечный календарь
Вечный календарь может быть реализован самыми разнообразными
способами, внешне абсолютно непохожими друг на друга. Но в
принципе их действия лежит одно — календари образуют цикл с периодичностью в 400 лет.
Слайд 8
вечный календарь
Придумано множество вечных календарей в виде таблиц,
однако почти все они сводятся к одному: имеется 14
календарных сеток (7 возможных дней недели, с которых начинается год × 2 варианта — високосный и не високосный год) и таблица, помогающая выбрать календарную сетку для нужного года либо определить сдвиг, помогающий правильно преобразовать одну сетку
Слайд 9
вечный календарь
Для того, чтобы узнать день недели конкретного
дня, требуется:
Найти в первой таблице цифру, соответствующую указанному году
и месяцу;
Сложить эту цифру с номером дня;
Найти во второй таблице получившееся число и посмотреть, какому дню недели оно соответствует.
Слайд 10
Стандартный алгоритм
Для удобства номер месяца преобразовывается таким образом,
чтобы март был первым месяцем, а февраль — двенадцатым и
относился к прошлому году (например, май 1998 → 03 1998, январь 1983 → 11 1982).
Для определения сдвига используется следующая формула: a=(14-месяц) div 12 (a — вспомогательная величина).
Затем определяются год и месяц с учётом поправки: y=год-a; m=месяц+12·a-2.
Слайд 11
Стандартный алгоритм
После вспомогательных операций вычисляется сам день недели:
Результат
=(7000+(день+y+y div 4-y div 100+y div 400+(31*m) div 12))
mod 7
Слайд 12
Реализация алгоритма в приложении MS EXCEL
Необходимо 2 функции:
DIV
– целая часть от деления
MOD - остаток от деления
В
EXCEL есть функции:
ОСТАТ – возвращает остаток от деления
ОТБР – отбрасывает остаток от деления
Слайд 13
Алгоритм, записанный для Excel
Вычисляем сдвиг:
a=ОТБР((14-месяц)/12)
У=год-a
m=месяц+12·a-2
Вычисляем результат:
РЕЗУЛЬТАТ=ОСТАТ(7000+(ЧИСЛО+У+ОТБР(У/4)-ОТБР(У/100)+ОТБР(У/400)+ОТБР(31*m/12));7)