Математики, объясните, пожалуйста.

Мне нужно подсчитать кол-во лет, месяцев и дней, которые прошли между следующими датами: 23. 12. 2003 и 03. 12. 2013
Зашел на сайт, который в онлайне просчитывает разницу между датами. Вышло следующе: 9 лет, 11 месяцев и 10 дней.
Если прибавить эти цифры к первой дате (23. 12. 2003) , то все сходится, а если посчитать обратно? 3 декабря 2013 отнимаю 9 лет. Получается 3 декабря 2004. Отнимаю 11 месяцев = 3 января 2004. Отнимаю от 3 января 2004 десять дней, получается 24 декабря 2003. Почему так? От перемены мест ведь не должно ничего меняться.
10 года назад от Вячеслав Фролов

2 Ответы

0 голосов
"Потому что, начальная дата в разницу не включается. "


ВОТ ИМЕННО. либо конечная. в зависимости от того, какой смысл вкладывается в сложение/вычитание дат.
10 года назад от Алиса Гусева
0 голосов
Ты первый раз прибавляешь сначала года, затем месяцы, затем дни, а когда вычитаешь, надо делать наоборот - сначала дни, затем месяцы, затем года. Ты же делаешь абсолютно так же. И у тебя получается, что сначала ты, когда прибавляешь 10 дней, перескакиваешь через 30 ноября и получаешь 23. 11. 20040=3 декабря, т к в ноябре 30 дней. В обратном порядке ты получаешь последним действием 03. 01. 2004 -10 дней, но в декабре уже 31 день, и поэтому происходит нестыковка в 1 день. Ответы выше неправильны, кстати. А зашёл ты на какой-то неправильный сайт, вот правильный
10 года назад от Павел Эндерс

Связанные вопросы