Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Возраст человека / 4 сообщений из 4, страница 1 из 1
19.07.2004, 19:00
    #32611422
Ustazz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возраст человека
Есть текущая дата и дата рождения.
Как посчитать на C# возраст человека в годах?
...
Рейтинг: 0 / 0
19.07.2004, 19:19
    #32611434
Ustazz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возраст человека
Я имею ввиду короче (и возможно правильнее), чем так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
DateTime birth = DateTime.Parse("1970-04-05");
DateTime now = DateTime.Parse("2004-04-04");
int age = now.Year - birth.Year;
if (birth.DayOfYear > now.DayOfYear)
{
    age --;
 
}
...
Рейтинг: 0 / 0
20.07.2004, 10:14
    #32611827
profil
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возраст человека
не знаю как проще, но конструкция
if (birth.DayOfYear > now.DayOfYear) age--;
при високосном годе (одна из дат) даст не верный результат
...
Рейтинг: 0 / 0
20.07.2004, 10:46
    #32611904
Ustazz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Возраст человека
Да, действительно, правильнее можно,

Код: plaintext
1.
2.
3.
4.
5.
int age = now.Year - birth.Year;
if (birth.Month > now.Month || (birth.Month == now.Month && birth.Day > now.Day))
{
	age --;
 
}

Утро вечера мудренее...
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Возраст человека / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]