Use uma data base, uma direção e quatro deslocamentos inteiros. A calculadora aplica primeiro a parte de anos e meses com aritmética gregoriana estrita, ajusta datas de fim de mês quando o mês de destino é mais curto e depois soma semanas e dias como passos exatos. A resposta principal é a data final, com o dia da semana e o deslocamento líquido em dias corridos como conferências rápidas.
Deslocamento gregoriano passo a passo:
- Ler a data base como uma data ISO exata.
- Converter a direção em sinal: somar é positivo, subtrair é negativo.
- Aplicar primeiro os anos e meses com sinal, movendo para o ano e o mês de destino enquanto o dia original do mês continua sendo a referência.
- Se o mês de destino não tiver esse dia, ajustar para o último dia válido daquele mês. É por isso que
2025-01-31 + 1 mês = 2025-02-28 e 2024-02-29 + 1 ano = 2025-02-28.
- Converter semanas e dias em um incremento exato com exactDayDelta=7w+d e aplicá-lo depois da etapa de anos/meses com ajuste.
- Derivar o dia final da semana a partir da data resultante e o deslocamento líquido a partir da distância entre a data base e a data final em dias UTC.