Cálculo de una fecha en el futuro o el pasado

C#:
Cálculo de una fecha en el futuro o el pasado

Cómo hacerlo:

using System;

public class FechaFuturaPasada
{
    static void Main()
    {
        DateTime fechaOriginal = new DateTime(2023, 3, 15); // 15 de marzo de 2023
        DateTime fechaFutura = fechaOriginal.AddDays(30); // 30 días después
        DateTime fechaPasada = fechaOriginal.AddDays(-15); // 15 días antes

        Console.WriteLine("Fecha Original: " + fechaOriginal.ToShortDateString());
        Console.WriteLine("Fecha Futura: " + fechaFutura.ToShortDateString());
        Console.WriteLine("Fecha Pasada: " + fechaPasada.ToShortDateString());
    }
}

Resultado:

Fecha Original: 15/03/2023
Fecha Futura: 14/04/2023
Fecha Pasada: 28/02/2023

Análisis en Profundidad:

Históricamente, la gestión de fechas ha sido complicada debido a diferentes calendarios y husos horarios. En C#, DateTime simplifica las tareas, pero hay que considerar años bisiestos, la variabilidad de los meses y el horario de verano al calcular fechas futuras o pasadas.

Existen alternativas como DateTimeOffset y bibliotecas especializadas como NodaTime para mayor soporte en zonas horarias.

Detalles de implementación a tener en cuenta: DateTime tiene métodos como AddDays, AddMonths, AddYears, pero estos no sobrepasan la representación máxima o mínima de una fecha (DateTime.MaxValue y DateTime.MinValue).

Véase También: