Re: задача для программистов
По единичке прибавляй не ошибешься 

О-О-О, прямо ты гений!
Нобелевскую премию в студию!

Нобелевскую премию в студию!

Хммм... А что значит полных месяцев? Например, родился 2 февраля, Сколько полных месяцев будет 3-го марта этого же года. И дней сколько?
Укажи язык, на котором тебе надо решить задачу. Потому что, например, на C# решение для количества дней будет выглядеть так:
DateTime from = DateTime.ParseExact("12.04.1961", "dd.MM.yyyy", null);
DateTime to = DateTime.ParseExact("17.11.2006", "dd.MM.yyyy", null);
Console.WriteLineto - from).TotalDays); человек просит алгоритм, а не
ParseExact
Алгоритм — последовательность четко определенных действий, выполнение которых ведет к решению задачи. Алгоритм, записанный на языке машины, есть программа решения задачи.
То, что я привел, является алгоритмом. Вопрос лишь в том, набор каких средств доступен автору темы. Его я и задал в своем первом сообщении.
То, что я привел, является алгоритмом. Вопрос лишь в том, набор каких средств доступен автору темы. Его я и задал в своем первом сообщении.
пиши псевдокод, не ошибёшься 

легко. Для того, чтобы на конкретной технологии реализовать алгоритм достаточно написать только функцию number_of_seconds_from_world_beginning:
Помогло это автору темы?
start = number_of_seconds_from_world_beginning_UTC(date_start);
end = number_of_seconds_from_world_beginning_UTC(date_end);
print truncateend - start) / 86400);
Помогло это автору темы?
это не есть правда
где я ошибся?
если между date_start и date_end количество переходов на летнее время больше
количества переходов на зимнее, то твой алгортим один день не посчитает.
если truncate заменить на округление, то всё ок будет.
количества переходов на зимнее, то твой алгортим один день не посчитает.
если truncate заменить на округление, то всё ок будет.
когда с датами работаешь нельзя быть до конца увереным что всё точно работает.
НАСА решило шатл в новый год на орбите не держать — он сцуко не знает что такое новый год =)
НАСА решило шатл в новый год на орбите не держать — он сцуко не знает что такое новый год =)
А зачем вообще учитывать переход на зимнее/летнее время?
Есть же страны, где такого различия вообще нет.
А день вроде бы учитывается високосными годами, а не переводом.
Так что достаточно определить кол-во прошедших дней по известной формуле.
Кол-во лет, а тем более месяцев, вычисляется несколько сложнее, но тоже на основании кол-ва прожитых дней.
Есть же страны, где такого различия вообще нет.
А день вроде бы учитывается високосными годами, а не переводом.
Так что достаточно определить кол-во прошедших дней по известной формуле.
Кол-во лет, а тем более месяцев, вычисляется несколько сложнее, но тоже на основании кол-ва прожитых дней.
А зачем вообще учитывать переход на зимнее/летнее время?а почему бы и не учесть? есть же страны, где переходят на летнее время...
Есть же страны, где такого различия вообще нет.

Но смена времени не влияет на то, сколько реальных лет/месяцев/дней прожил чел!
Речь ведь не шла про часы?
Речь ведь не шла про часы?
тут ужо подробно усё расписали
в двух словах можно было сказать так: день (календарная единица) ≠сутки (24 часа)
в двух словах можно было сказать так: день (календарная единица) ≠сутки (24 часа)
Еще раз повторяю вопрос: какой смысл имеет календарное время жизни человека?
Вот какой смысл имеет реальное время жизнь человека - еще более-менее понятно, а вот с календарным как-то не очень
Иначе получается формулировка задачи ради самой задачи, а не ради решения реальной задачи...
Вот какой смысл имеет реальное время жизнь человека - еще более-менее понятно, а вот с календарным как-то не очень

Иначе получается формулировка задачи ради самой задачи, а не ради решения реальной задачи...
реальное время жизни человекаэто что такое?

смысл календарного времени в том, что нужно его посчитать. а если число переходов на летнее время меньше числа переходов на зимнее за учётный период, то алгоритм может работать некорректно (с ошибкой в один календарный день).
если между date_start и date_end количество переходов на летнее время большезабыл сказать. время в алгоритме в UTC (т.е. по Гринвичу). Там нет переходов на летнее/зимнее время.
количества переходов на зимнее, то твой алгортим один день не посчитает.
если truncate заменить на округление, то всё ок будет.
о! точно, тогда всё правильно.
я просто привык жить, что в компе время в UTC считать надо и сначала не понял, почему народ негодует.
Оставить комментарий
Zhelev
Help:Задача: рассчитать возраст человека с точностью до дня. Есть две даты: дата рождения человека и дата, на которую рассчитываем возраст. Даты задаются в обычном формате, например 13.10.1982 (10-месяц)-дата рождения и 15.11.2006 - дата расчета. Необходимо рассчитать возраст человека в формате: X=сколько полных лет прожил человек; Y=сколько полных месяцев прожил человек, Z=сколько полных дней прожил человек.
Интересует сам алгоритм, чтобы его можно было запрограммировать!
Алгоритм для определения точного числа прожитых лет и месяцев уже есть!
Может кто-то уже решал такую задачу?
Можно и код данного алгоритма, если у кого есть!