Как рассчитать возраст на C# с учетом високосного года

Вот пример того, как можно вычислить возраст человека на C#, учитывая високосные годы и дату рождения:

using System;
public class AgeCalculator
{
    public static int CalculateAge(DateTime dateOfBirth)
    {
        DateTime currentDate = DateTime.Today;
        int age = currentDate.Year - dateOfBirth.Year;
        if (currentDate.Month < dateOfBirth.Month || (currentDate.Month == dateOfBirth.Month && currentDate.Day < dateOfBirth.Day))
        {
            age--;
        }
        return age;
    }
    public static void Main()
    {
        // Example usage
        DateTime dateOfBirth = new DateTime(1990, 5, 15);
        int age = CalculateAge(dateOfBirth);
        Console.WriteLine("Age: " + age);
    }
}

Этот код определяет класс AgeCalculatorсо статическим методом CalculateAge. Метод CalculateAgeпринимает объект DateTime, представляющий дату рождения, и возвращает рассчитанный возраст. Он учитывает текущую дату и проверяет, находятся ли текущие месяц и день перед месяцем и числом даты рождения. Если да, то из рассчитанного возраста вычитается один год.

Пример использования метода Mainдемонстрирует, как использовать метод CalculateAge, указав конкретную дату рождения и распечатав рассчитанный возраст.