Como um computador funciona durante a semana para qualquer data
Cada data desde que o calendário gregoriano entrou em vigor tem exatamente um dia da semana correto e pode ser calculado apenas com aritmética – sem necessidade de aplicativo de calendário ou tabela de pesquisa. A ideia subjacente é a mesma formalizada pela congruência de Zeller e pelo método de Sakamoto: contar o número total de dias a partir de um ponto de referência conhecido e, em seguida, considerar o módulo 7 da contagem para chegar a um dia da semana.
O software moderno não executa literalmente a fórmula clássica de Zeller – normalmente rastreia a contagem de dias usando internamente um calendário gregoriano proléptico – mas o resultado é matematicamente idêntico ao que esses algoritmos de caneta e papel calculam. Essa consistência é exatamente a razão pela qual esta calculadora, um almanaque de papel e um truque de matemática mental concordam na mesma resposta para a mesma data.
O turno de um dia (ou dois dias), ano após ano
Um ano normal dura 365 dias – exatamente 52 semanas mais um dia extra. Esse dia restante é o motivo pelo qual uma data fixa, digamos 4 de julho, avança exatamente um dia da semana a cada ano: terça-feira em um ano, quarta-feira no seguinte e assim por diante.
Os anos bissextos quebram esse padrão estável. Como o dia 29 de fevereiro é inserido no meio do ano, qualquer data a partir de 1º de março avança dois dias da semana em vez de um, em comparação com o ano anterior. As datas de janeiro e fevereiro não serão afetadas até que o dia bissexto realmente tenha passado.
Há mais um problema na marca do século: os anos divisíveis por 100 não são anos bissextos, a menos que também sejam divisíveis por 400. O ano 2000 foi um ano bissexto sob essa regra; 1900 não foi, e 2100 também não será – um detalhe que importa se você estiver calculando dias da semana no passado ou no futuro.
Verificando dias da semana para datas históricas
Como o dia da semana é uma propriedade fixa da própria data, este mesmo cálculo funciona para verificar registos históricos – confirmando que um evento documentado realmente aconteceu no dia da semana que uma fonte afirma, ou calculando em que dia da semana nasceu um antepassado distante.
Uma advertência para datas anteriores a 1582: o calendário em uso antes da reforma gregoriana (o calendário juliano) funcionava com regras de anos bissextos ligeiramente diferentes, pelo que os cálculos dos dias da semana para datas anteriores a essa mudança dependem do calendário que o próprio registo histórico estava a utilizar.
Além de uma única data: ocorrências e contagens de dias da semana
Depois que você puder calcular um dia da semana para uma data, mais três questões úteis surgirão da mesma matemática:
- Next/previous occurrence — the closest date before or after a given day that falls on a specific weekday, useful for finding "the next Friday" from any starting point.
- Contar dias da semana – quantas vezes um determinado dia da semana (digamos, segunda-feira) ocorre dentro de um intervalo de datas, que é a mesma matemática por trás da contagem de períodos de pagamento ou datas de reuniões recorrentes.
- Encontre todas as ocorrências – uma lista completa de todas as datas de um dia da semana específico dentro de um intervalo, útil para programar qualquer coisa que se repita semanalmente.
Se, em vez disso, você precisar do número exato de dias entre duas datas ou de uma contagem regressiva até uma data prevista, o Contador de dias lida com isso diretamente. Para adicionar ou subtrair anos, meses ou semanas de uma data, consulte o Calculadora de Data.