![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Разница между датами [D7, XP]
Andy BitOff (ppc) © (2007-11-08 13:07:00)
Страницы: < 1 2 3 4 5 6 7 8 9 >
Здравствуйте.
Что-то у меня уже башка не варит, сижу парюсь и шарики за ролики заходят...
Никак не удается получить разничу между датами в формате dd.mm.yy.
Например.
05.11.2007 и 08.11.2007 должно получиться 03.00.00, но при работе с типом дата месяц (как и год) не может быть равен 0.
Может кто подскажет как это можно реализовать?
Johnmen (2007-11-10 21:51:00) [21]
> Andy BitOff © (10.11.07 02:29) [133]
> Всё правильно. В 6 месяце 30 дней, а в седьмом 31, в этом как раз и суть.
> И ответ правильный. Посчитайте пальчиком (не вычитанием) на календаре
> и вы увидите, что между этими датами ровно МЕСЯЦ или 30 и 31 день,
> соответственно. Вот где зерно истины. В предыдущем месяце.
Следуя этой логике между 31.01.2007 и 02.03.2007 ровно месяц, т.е. 31 сутки, ведь это "зерно истины, предыдущий месяц". Да?
Я думаю, что ты все равно не понял сути. Почитай последние посты дяди Толи (не флудерские), подумай...
Anatoly Podgoretsky (2007-11-10 12:04:00) [22]> Andy BitOff (10.11.2007 11:36:21) [141]
Ну вот опять, интервал это не точка на шкале времени. После получения интервала никакой год и месяц не существует.
Похоже что это длинное обсуждение пошло насмарку.
Andy BitOff (2007-11-10 11:55:00) [23]Да я, собственно, как и писал выше, уже решил эту задачу. Правда в выходные я редко пишу, но алгоритм готов, если кому интересно, то могу вечером его набрасать (будет над чем пофлудить ;) ). А если кому код надо, то в понедельник.
Andy BitOff (2007-11-10 11:36:00) [24]А я чего-то не понял...
Что нет функции, которая возвращает количество дней в месяце по году и месяцу?
Virgo_Style (2007-11-10 09:27:00) [25]> Andy BitOff © (10.11.07 04:04) [138]
> (количество полных дней, месяцев, лет)
Если вдруг ты не заметил, то все обсуждение вертится вокруг вопроса "сколько дней в месяце и в году".
Andy BitOff (2007-11-10 04:14:00) [26]
> Германн © (10.11.07 03:05) [136]
> Задачу не поставил. Это раз.
> Обстановку не описАл. Это два.И требовал решения!
Задачу поставил. Согласен, что неказисто, но на то время у меня моск плавился. Но позже, несколькими постами ниже, её всё-таки выяснили.
Обстановку. Какую обстановку? Ну сидел на стуле за столом, лицом вперед. Передомной стоял ноутбук, в руках КПК - писал сюда пост. Вот и вся обстановка. А, еще народ вокруг какой-то был, но я думаю, это не столь существенно, или вам нужны их имена?
Andy BitOff (2007-11-10 04:04:00) [27]Дано:
Два значения типа TDate.
Первое >= второму.
В частном случае, первое значение Now()
Задача:
Получить разницу между этими датами (количество полных дней, месяцев, лет) в строковую переменную в формате dd.mm.yy
Например:
Now() - Now() = 00.00.00
Now() - (IncDay(Now()), - 1) = 01.00.00
05.11.2007 - 05.11.2006 = 00.00.01
15.07.2007 - 15.06.2007 = 00.01.00
15.08.2007 - 15.07.2007 = 00.01.00
Джо (2007-11-10 03:08:00) [28]Кстати, кто-то соберется, наконец, дать формальное описание задачи?
А то пока наблюдаются многократные попытки написать незнамо что.
Как-то оно, ИМХО, утомительно.
Германн (2007-11-10 03:05:00) [29]
> Andy BitOff © (10.11.07 02:45) [135]
>
>
А чем ты лучше (выше) тех, кого
> уже поблагодарил.
?
Задачу не поставил. Это раз.
Обстановку не описАл. Это два.
И требовал решения!
АП прав. Ветка была изначально флудерская.
Andy BitOff (2007-11-10 02:45:00) [30]
> Германн © (10.11.07 02:37) [134]
Флудеров я уже поблагодарил. Им можно больше не беспокоиться. Тем более, что ветка не в потрепаться.
Германн (2007-11-10 02:37:00) [31]
> Andy BitOff © (10.11.07 02:29) [133]
>
>
"И вечный бой. Покой нам только снится!"
Andy BitOff (2007-11-10 02:29:00) [32]
> Anatoly Podgoretsky © (09.11.07 19:08) [132]
> Если ветка не удаляется, то только лишь потому,
> что автор еще матом не ругается.
Я на редкость спокойный и терпеливый, даже, не побоюсь этого слова - толерантный, меня трудно вывести из равновесия, да еще довести до такой степени, что бы я прилюдно стал ругаться матом.
Это вам, уважаемым, видно нечем заняться, всё флудите, да флудите, а некоторые (не будет тыкать в грудь пальцем) в это время работают ;)
А по поводу сабжа. Реализация возможна. Алгоритм проработан и испытан вручную, на кошках.
Спасибо SergeyITза понимание и поддержку, он в одиночку сражался с флудерами до конца =)
Спасибо Johnmen, который честно пытался доказать, что реализация этой задачи не возможна. А спасибо именно за то, что направил на путь истинный, может быть сам этого и не осознавая. Именно из его постов было подчерпнуто зерно истины.
Ну, а остальным, за столь долгое обсуждение темы. =) Это же надо 132 поста!
> Johnmen © (09.11.07 13:22) [106]
> > SergeyIT © (09.11.07 12:57) [101]
> 1. 15.06.2007 - 15.07.2007 = 0.1.0
> 2. 15.07.2007 - 15.08.2007 = 0.1.0
> При этом
> 1. = 30 суток
> 2. = 31 сутки
> далее 31>30, но что мы видим??? 0.1.0 = 0.1.0 !!!
Всё правильно. В 6 месяце 30 дней, а в седьмом 31, в этом как раз и суть. И ответ правильный. Посчитайте пальчиком (не вычитанием) на календаре и вы увидите, что между этими датами ровно МЕСЯЦ или 30 и 31 день, соответственно. Вот где зерно истины. В предыдущем месяце.
Anatoly Podgoretsky (2007-11-09 19:08:00) [33]> korneley (09.11.2007 17:48:10) [130]
А ты чего хочешь то? Ветка давно уже флудерская, ее может стоит в Потрепаться кинуть. Если ветка не удаляется, то только лишь потому, что автор еще матом не ругается.
engine (2007-11-09 18:07:00) [34]А в сутках 23, 24 или 25 часов? )))
korneley (2007-11-09 17:48:00) [35][126] - [129]
А ещё меня во флуде упрекали :) Но, тем не менее поддержу:" И за DIMM!"
Anatoly Podgoretsky (2007-11-09 17:04:00) [36]> clickmaker (09.11.2007 16:11:07) [127]
"Ну! За присутствующих здесь Засим!"
Германн (2007-11-09 16:19:00) [37]
> Джо © (09.11.07 16:08) [126]
Угу. Был не прав.
clickmaker (2007-11-09 16:11:00) [38]
> Правильно будет за сим
Правильно будет: "Ну! За присутствующих здесь Сим!"
Джо (2007-11-09 16:08:00) [39]> [125] Германн © (09.11.07 15:53)
>
> > Засим тоже умолкаю.
> > И это правильно.
> >
>
> Нет. Правильно будет за сим.
> :)
Нет, как-раз первоначальный вариант — правильный.
Но все это оффтоп, конечно.
Германн (2007-11-09 15:53:00) [40]
> Засим тоже умолкаю.
> И это правильно.
>
Нет. Правильно будет за сим.
:)