Инструкция
1
Изготовьте семь карточек-календарей на один месяц, в первом из которых месяц начинается с понедельника, во втором - со вторника, в третьем - со среды и так далее до календаря, в котором месяц начинается с воскресенья. Присвойте карточкам номера от 1 до 7, причем первый номер присвойте календарю, в котором месяц начинается с понедельника. Сделайте эти карточки из плотного картона, подвергните их ламинации, ведь календарь рассчитан на хранение и использование в течение многих лет.
2
Также включите в комплект вечного календаря карточку со следующей формулой:ч=д+((13м-1)/5)+г+(г/4)+(в/4)-2в, где:- ч - промежуточный результат, подлежащий дальнейшему преобразованию;- д - дата;- м - месяц, выбранный несколько необычным образом: март - первый месяц, февраль - двенадцатый;- г - последние две цифры номера года (если месяц - январь или февраль, то предыдущего года);- в - номер века, из которого вычтена единица (для января или февраля вместо единицы вычитайте двойку).Эту карточку также изготовьте из плотного картона и подвергните ламинации. Скрепите все карточки между собой, чтобы они не потерялись. Сделайте для вечного календаря удобный футляр, при желании, в нем же храните и калькулятор подходящего размера.
3
Произведя вычисления по указанной формуле, результат ч поделите на семь с остатком.
4
Возьмите модуль от остатка деления.
5
Возьмите карточку с номером, равным результату последнего вычисления, после чего по ней определите день недели.
6
При желании, составьте программу для осуществления вычислений по обеим формулам на любом известном вам языке программирования. При этом, однако, может представлять трудность деление с остатком, поскольку готовой функции для этого в большинстве языков программирования нет. Удобнее всего воспользоваться языком Паскаль, в котором соответствующая функция имеется. Чтобы найти целую часть результата деления с остатком, воспользуйтесь строкой следующего вида:c:=a div b.Для того же, чтобы найти остаток от деления, воспользуйтесь строкой другого вида:c:=a mod b.