Algoritmo Doomsday

Algoritmo Doomsday

El algoritmo Doomsday o regla Doomsday (algoritmo del "día del fin del mundo", en español), es un algoritmo que permite calcular en qué día de la semana cae un día de un año dado.

Contenido

Introducción

Este algoritmo de cálculo mental fue inventado por el matemático inglés John Conway. Tiene la característica de proporcionar un calendario perpetuo. Parte del hecho de que, en el calendario (juliano o gregoriano) de cualquier año, los días 4 de abril (4/4), 6 de junio (6/6), 8 de agosto (8/8), 10 de octubre (10/10) y 12 de diciembre (12/12) siempre caen en el mismo día de la semana, siendo este el mismo día de la semana en el que cae el último día de febrero. Hay que tener en cuenta que para el calendario Juliano el Doomsday de un año cae en un día de la semana que puede diferir del que le corresponde en el calendario oficial (Gregoriano).

El algoritmo consta de tres pasos: encontrar el día marcador para el siglo, encontrar el Doomsday del año, y encontrar el día de la semana de la fecha que queremos buscar.

Cálculo del Doomsday de un año

Primero tomamos el día marcador del siglo. Recordemos que, a todos los efectos concernientes a la regla Doomsday, cada siglo comienza con un año "00" y termina con un año "99".

Siglo Marcador Mnemónico
1800-1899 Viernes
1900-1999 Miércoles En inglés, "We-in-dis-day"
aproximadamente "nosotros en este día" y similar a la pronunciación de Miércoles, Wednesday, en inglés (la mayoría de nosotros nacimos en este siglo)
2000-2099 Martes "Y-Tue-K"
(Y2K, el año 2000, fue el inicio de este siglo) Tue es la abreviatura de Tuesday, martes en inglés)
2100-2199 Domingo

A continuación, encontramos el Doomsday correspondiente al año. Para llevar esto a cabo según nos indica Conway, empezamos por dividir los dos últimos dígitos del año (llamemos a esto y) por 12 y quedándonos con la parte entera del cociente (a la que denotaremos por a) y el resto (al que llamaremos b). Después de esto, dividimos al resto por 4 y tomamos la parte entera del cociente (c). Finalmente, determinamos la suma de estos tres números para obtener el total d = a + b + c. (Es posible dividir por 7 y quedarnos con el resto. Este número es equivalente, y debe ser igual, a la suma de los últimos dos dígitos del año más la parte entera de estos dígitos dividida por 4)

Ahora, contamos hacia delante el número especificado de días (d o el resto que queda al dividirlo por 7) a partir del día marcador, y encontramos el Doomsday que corresponde a nuestro año.

\left({\left\lfloor{\frac{y}{12}}\right\rfloor+y \bmod
12+\left\lfloor{\frac{y \bmod 12}{4}}\right\rfloor}\right) \bmod
7+\rm{marcador}=\rm{Doomsday}

Por ejemplo, para el año 1966, en el siglo XX, tenemos:

\begin{matrix}\left({\left\lfloor{\frac{66}{12}}\right\rfloor+66 \bmod 12+\left\lfloor{\frac{66 \bmod 12}{4}}\right\rfloor}\right) \bmod 7+\rm{Miercoles} & = & \left(5+6+1\right) \bmod 7+\rm{Miercoles} \\
\ & = & \rm{Lunes}\end{matrix}

Por lo que el Doomsday de 1966 cayó en lunes.

Similarmente, el Doomsday de 2005 cayó también en lunes, ya que:

\left({\left\lfloor{\frac{5}{12}}\right\rfloor+5 \bmod
12+\left\lfloor{\frac{5 \bmod 12}{4}}\right\rfloor}\right) \bmod
7+\rm{martes}=\rm{lunes}

Cálculo del día de la semana de una fecha dada

El día de la semana de una fecha dada puede deducirse con facilidad a partir de algún Doomsday cercano. Los siguientes días siempre caen en el Doomsday correspondiente para cualquier año en el calendario Gregoriano o Juliano:

  • 3 de enero 3 años de cada 4, esto es, los años normales; 4 de enero los años bisiestos
  • El último día de febrero - el 28 de febrero para los años normales, o el 29 de febrero para los años bisiestos
  • "El 0 de marzo" (según la extensión hacia atrás del calendario, se corresponde con el último día de febrero.)
  • 4 de abril
  • 9 de mayo
  • 6 de junio
  • 11 de julio
  • 8 de agosto
  • 5 de septiembre
  • 10 de octubre
  • 7 de noviembre
  • 12 de diciembre

Las fechas listadas arriba se eligieron por ser fáciles de recordar: las correspondientes a los meses pares son simplemente dobles, 4/4, 6/6, 8/8, 10/10, 12/12, y las de cuatro de los meses impares (5/9, 9/5, 7/11 y 11/7) se recuerdan usando el mnemónico "Trabajo de 9 a 5 en el 7-Eleven."

Para las fechas en marzo, el 7 de marzo cae en Doomsday, pero la pseudofecha "0 de marzo" es más fácil de recordar, ya que es necesariamente el mismo que el último día de febrero.

El Doomsday de un año está directamente relacionado con los días de la semana para fechas en el periodo comprendido entre marzo y febrero del año siguiente. Para las fechas correspondientes a enero y febrero del año en curso, debemos hacer una distinción entre años normales y bisiestos.

Listado de todos los Doomsdays

Enero (años normales) 3, 10, 17, 24, y

31

 1-5
Enero (años bisiestos) 4, 11, 18, y 25
Febrero (años normales) 7, 14, 21, y 28  6-9
Febrero (años bisiestos) 1, 8, 15, 22, y 29
Marzo 7, 14, 21, y 28  10-13
Abril 4 de abril, 11, 18, y 25  14-17
Mayo 2, 9, 16, 23, y 30  18-22
Junio 6, 13, 20, y 27  23-26
Julio 4, 11, 18, y 25  27-30
Agosto 1, 8, 15, 22, y 29  31-35
Septiembre 5, 12, 19, y 26  36-39
Octubre 3, 10, 17, 24, y 31  40-44
Noviembre 7, 14, 21, y 28  45-48
Diciembre 5, 12, 19,

y 26

 49-52
Enero del año siguiente 2, 9, 16, 23, y 30
Febrero del año siguiente 6, 13, 20,

y 27

En los años bisiestos, el n-ésimo Doomsday cae en la n-ésima semana ISO. En los años normales, el día después del n-ésimo Doomsday cae en la semana n, así, en un año normal el número de la semana de un Doomsday es uno menos si este es domingo, esto es, en los años normales que empiezan en viernes.

Fórmula para el Doomsday de un año

Las siguientes fórmulas para el cálculo del Doomsday de un año son convenientes para su uso con ordenadores:

Para el calendario Gregoriano:

\mbox{Doomsday} =  \mbox{Martes} + y +
\left\lfloor\frac{y}{4}\right\rfloor -
\left\lfloor\frac{y}{100}\right\rfloor +
\left\lfloor\frac{y}{400}\right\rfloor

Para el calendario Juliano:

\mbox{Doomsday} =  \mbox{Domingo} + y +
\left\lfloor\frac{y}{4}\right\rfloor

Estas fórmulas también son aplicables para el calendario gregoriano proléptivo y el calendario Juliano proléptico. Usan la función parte entera y la numeración anual astronómica para años aC.

Compárese con la fecha Juliana.

Ciclo

El ciclo completo de 400 años de los Doomsday viene dado en la siguiente tabla. Los siglos corresponden al calendario Gregoriano y Gregoriano proléptico, a menos que estén marcados con una J para el Juliano (para el que no se muestran todos los siglos, si bien es fácil interpolar). Los años bisiestos en el calendario Gregoriano aparecen ensanchados

            ,-----,-----,-----,-----,
            |-200J|  00J| 200J| 400J|
            | 500J| 700J| 900J|1100J|
            |1200J|1400J|1600J|1800J|
            |1900J|2100J|2300J|2500J|
            |     |     |     |     |
            |-400 |-300 |-200 |-100 |
            |  00 | 100 | 200 | 300 |
            | 400 | 500 | 600 | 700 |
            | 800 | 900 |1000 |1100 |
            |1200 |1300 |1400 |1500 |
            |1600 |1700 |1800 |1900 |
            |2000 |2100 |2200 |2300 |
,-----------+-----+-----+-----+-----|
|         00| M A | DO  | VI  | MI  |
|-----------+-----+-----+-----+-----|
|85 57 29 01| MI  | LU  | SA  | JU  |
|86 58 30 02| JU  | MA  | DO  | VI  |
|87 59 31 03| VI  | MI  | LU  | SA  |
|88 60 32 04| D O | V I | M I | L U |
|-----------+-----+-----+-----+-----|
|89 61 33 05| LU  | SA  | JU  | MA  |
|90 62 34 06| MA  | DO  | VI  | MI  |
|91 63 35 07| MI  | LU  | SA  | JU  |
|92 64 36 08| V I | M I | L U | S A |
|-----------+-----+-----+-----+-----|
|93 65 37 09| SA  | JU  | MA  | DO  |
|94 66 38 10| DO  | VI  | MI  | LU  |
|95 67 39 11| LU  | SA  | JU  | MA  |
|96 68 40 12| M I | L U | S A | J U |
|-----------+-----+-----+-----+-----|
|97 69 41 13| JU  | MA  | DO  | VI  |
|98 70 42 14| VI  | MI  | LU  | SA  |
|99 71 43 15| SA  | JU  | MA  | DO  |
|   72 44 16| L U | S A | J U | M A |
|-----------+-----+-----+-----+-----|
|   73 45 17| MA  | DO  | VI  | MI  |
|   74 46 18| MI  | LU  | SA  | JU  |
|   75 47 19| JU  | MA  | DO  | VI  |
|   76 48 20| S A | J U | M A | D O |
|-----------+-----+-----+-----+-----|
|   77 49 21| DO  | VI  | MI  | LU  |
|   78 50 22| LU  | SA  | JU  | MA  |
|   79 51 23| MA  | DO  | VI  | MI  |
|   80 52 24| J U | M A | D O | V I |
|-----------+-----+-----+-----+-----|
|   81 53 25| VI  | MI  | LU  | SA  |
|   82 54 26| SA  | JU  | MA  | DO  |
|   83 55 27| DO  | VI  | MI  | LU  |
|   84 56 28| M A | D O | V I | M I |
'-----------+-----+-----+-----+-----|
            |1600 |1700 |1800 |1900 |
            |2000 |2100 |2200 |2300 |
            '-----'-----'-----'-----'

Los años negativos usan la numeración anual astronómica, así el año 25 a. C. es el -24, mostrado en la columna -100J (Juliano proléptico) o -100 (Gregoriano proléptico), en la fila 76.

La frecuencia en el ciclo de 400 años es la siguiente (los años bisiestos aparecen ensanchados de nuevo):

  • 44 × JU, SA
  • 43 × LU, MA, MI, VI, DO
  • 15 × L U, M I
  • 14 × V I, S A
  • 13 × M A, J U, D O

Juntando los años normales y bisiestos:

  • 58 × Lu, Mi, Sa
  • 57 × Ju, Vi
  • 56 × Ma, Do

Un año bisiesto con lunes como Doomsday significa que el domingo es uno de los 97 días saltados en la sucesión de 497 días, por lo que el número total de años que tienen al domingo como Doomsday es 71 menos el número de años bisiestos con lunes como Doomsday, etc.

Puesto que el lunes como Doomsday está omitido en febrero de 2000, y el patrón de años bisiestos es simétrico con respecto a este día, las frecuencias de los Doomsdays por día de la semana (juntando los años normales y bisiestos) son simétricas con respecto al lunes. Las frecuencias de Doomsdays de años bisiestos por día de la semana son simétricas respecto del Doomsday del 2000, martes.

A partir de las anteriores, es sencillo deducir la frecuencia con la que una fecha particular cae en un día de la semana en particular (para fechas entre el 1 de enero y el 28 de febrero, úsese el Doomsday del año anterior).

Por ejemplo, el 28 de febrero es un día después del Doomsday del año anterior, así que cae 58 veces en martes, jueves y Domingo, etc. El 29 de febrero es el Doomsday de un año bisiesto, así que cae 15 veces en lunes y miércoles, etc.

El ciclo de 28 años

Con respecto a la frecuencia de los Doomsdays en un ciclo Juliano de 28 años, hay 1 año bisiesto y 3 años normales por cada día de la semana, teniendo lugar estos últimos 6, 17 y 23 años después del bisiesto (con intervalos de 6, 11, 6 y 5 años no igualmente distribuidos ya que después de 12 años el día se salta en la secuencia de Doomsdays). El mismo ciclo se aplica a cualquier fecha posterior al 1 de marzo cayendo en un día de la semana concreto.

Para cualquier fecha dada hasta el 28 de febrero cayendo en un día de la semana en concreto, los tres años normales tienen lugar 5, 11 y 22 años después del año bisiesto, con intervalos, por tanto, de 5, 6, 11 y 6 años. Así, el ciclo es el mismo, pero con el intervalo de 5 años inmediatamente después, en vez de inmediatamente antes, del año bisiesto.

Así, para cada fecha excepto el 29 de febrero, los intervalos entre años normales en los que dicho día cae en un día de la semana dado, son 6, 11, 11. Véase por ejemplo al final de la página Año normal empezando en lunes los años en el intervalo 1906 - 2091.

El 29 de febrero cae en un día de la semana dado exactamente una vez cada 28 años, por supuesto en un año bisiesto.

Doomsdays para años cercanos

El Doomsday para algunos años cercanos es:

2004 Domingo
2005 Lunes
2006 Martes
2007 Miércoles
2008 Viernes
2009 Sábado
2010 Domingo
2011 Lunes
2012 Miércoles
2013 Jueves
2014 Viernes
2015 Sábado
2016 Lunes
2017 Martes

Correspondencia con la letra dominical

El Doomsday está relacionado con la letra dominical del año como sigue:

Letra
dominical
Doomsday
A o BA Martes
B o CB Lunes
C o DC Domingo
D o ED Sábado
E o FE Viernes
F o GF Jueves
G o AG Miércoles

Ejemplos

Ejemplo 1: Año 2006

Supongamos que queremos saber en qué día de la semana cae el 25 de diciembre de 2006. En el año 2006, el Doomsday es martes, ya que el marcador del siglo es el martes y al Doomsday de 2006 le corresponden 7 días más, volviéndose a obtener martes. Esto significa que el 12 de diciembre será martes. Como el 25 de diciembre es 13 días después de esto, caerá en lunes.

Ejemplo 2: Otros años del siglo XXI

Supongamos que queremos encontrar el día de la semana en el que ocurrieron los atentados del 11 de septiembre de 2001 al World Trade Center. El marcador es martes, y un día más es miércoles. El 5 de septiembre es un Doomsday, y el 11 de septiembre, seis días después, cae en martes.

Calendario Juliano

El calendario Gregoriano se alinea de forma acertada con eventos astronómicos tales como los solsticios. En 1582 se introdujo este calendario como modificación del calendario Juliano. Para corregir el desfase entre ambos calendarios, se tomó la decisión de saltarse 10 días, pasándose del 4 de octubre de 1582 al 15 de octubre de 1582. Como consecuencia de esto, el Doomsday se movió hacia atrás 10 (o 3) días. La tabla anterior contiene los años del calendario Juliano, pero el algoritmo sólo es válido para el calendario Gregoriano (o Gregoriano proléptico).

Conviene señalar que el calendario Gregoriano no fue adoptado simultáneamente en todos los países, y así durante varios siglos regiones diferentes utilizaban fechas diferentes para el mismo día. Más información sobre este asunto puede encontrarse en el artículo sobre el calendario Gregoriano.

Enlaces externos


Wikimedia foundation. 2010.

См. также в других словарях:

  • Algoritmo para calcular el día de la semana — Este artículo o sección debería estar en Wikilibros ya que es una guía o manual en vez de contenido enciclopédico. [ver página en Wikilibros] Si modificas el texto dándole una orientación más enciclopédica, por favor quita este aviso …   Wikipedia Español

  • Congruencia de Zeller — La congruencia de Zeller es un algoritmo ideado por Julius Christian Johannes Zeller para calcular el día de la semana de cualquier fecha del calendario. Contenido 1 Fórmula 2 Análisis 3 Algoritmo 3.1 …   Wikipedia Español

  • 0 de marzo — Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas. Puedes añadirlas así o avisar …   Wikipedia Español

  • 0 de enero — El 0 de enero es un día ficticio anterior al 1 de enero y posterior al 31 de diciembre. Su objetivo es mantener la fecha del año para la cual fue publicada una efeméride, evitando así cualquier referencia al año anterior, incluso habiendo… …   Wikipedia Español

  • Navaja de Ockham — La navaja de Ockham (a veces escrito Occam u Ockam), principio de economía o principio de parsimonia (lex parsimonia), es un principio metodológico y filosófico atribuido a Guillermo de Ockham (1280 1349), según el cual cuando dos teorías en… …   Wikipedia Español


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»