Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];
Внизалгоритм преобразования TDateTime в String Найти похожие ветки
← →
INCOGNITO (2005-05-23 23:19) [0]Задача вообщем такая:
нужно реализовать алгоритм преобразования TDateTime в String в формате HH:MM:SS.
Не могу найти подробную инфу по TDateTime. На сколько я знаю, целая часть - это количество дней с какого-то опред. момента, а дробная - количество (чего? секунд, миллисекунд? или чего) с полуночи.
Пытался анализировать дробную часть... CurrToStr в 00:00:00 (полночь) часов возвращает 0,0001 в 23:59:50 около 0,9999.
Хотя в сутках 86400 секунд... Поэтому не пойму как задаётся нужная точность....
Короче, нужно получит из дробной части целую, это раз.
И разрулить с дробной частью.. Что она из себя представляет.
← →
Johnmen © (2005-05-23 23:26) [1]FormatDateTime+F1
← →
Yanis © (2005-05-23 23:27) [2]DateToStr()
← →
Yanis © (2005-05-23 23:28) [3]
> FormatDateTime+F1
Ну да.
← →
Юрий Зотов © (2005-05-23 23:31) [4]А дробная - это дробь и есть: количество миллисекунд, прошедших с полуночи, деленное на количество миллисекунд в сутках.
А реализовывать ничего не надо, все уже реализовано - см. FormatDateTime.
← →
INCOGNITO (2005-05-23 23:32) [5]В этой функции я уже копался... Огромная слишком.
(
Да и разрывать чужой код - не самое приятное.
всё что мне нужно - понять что из себя представляет дробная часть
← →
sniknik © (2005-05-23 23:32) [6]точного значения нет, всетаки число с плавающей запятой...
а анализировать... подключи модуль DateUtils напиши любую функцию например HourOfTheDay нажми на ней Ctrl+клик мышой, и попадеш в ее код и так дальше кликай дойдеш до разбора.../расчета, оттуда будет сразу видно "Что она из себя представляет."
← →
Anatoly Podgoretsky © (2005-05-23 23:46) [7]Хватит и TimeToStr
← →
palva © (2005-05-23 23:50) [8]> всё что мне нужно - понять что из себя представляет дробная часть
Дробная часть - это доля суток. Например, 0.5 - 12 часов, 0.75 - 18 часов, 0.9 - 21 час 36 мин.
← →
INCOGNITO (2005-05-23 23:51) [9]да всё дело вы том, что препод требует изобрести велосипед заново, и чтоб не подсматривать в DateTimeToString ((
Т.е. К примеру, если на часах час ночи,
то в дробной части будет: 3600000/8640000 = 0,416666(6), так?
← →
palva © (2005-05-23 23:54) [10]> 0,416666(6), так?
не так, 0,0416666(6)
← →
Anatoly Podgoretsky © (2005-05-23 23:58) [11]Это значит, что будет 1/24
← →
INCOGNITO (2005-05-24 00:05) [12]ясна... Всем спасиба.
Осталось догнать как из этого сделать красивое HH:MM:SS ) Но это я сам постараюсь )
← →
Anatoly Podgoretsky © (2005-05-24 00:31) [13]Правильно, тебе же не код нужен, а знания, иначе для чего ты учишься. Вот только подсказка:
В сутках 86400 секунд, 1440 минут и 24 часа. Этого достаточно для решения.
← →
Alx2 © (2005-05-24 00:39) [14]>Anatoly Podgoretsky © (24.05.05 00:31) [13]
Однако, хитроумные у вас подсказки :)
← →
INCOGNITO (2005-05-24 01:19) [15]всё уже решил ) спасиб
← →
Германн © (2005-05-24 01:30) [16]2 Alx2 © (24.05.05 00:39) [14]
>>Anatoly Podgoretsky © (24.05.05 00:31) [13]
>Однако, хитроумные у вас подсказки :)
Они не столько "хитроумные" (хотя и это в них есть), сколько "подталкивающие" к нахождению решения самому! Что в последнее время стараются реализовать большинство Мастеров на сем форуме. И в этом он и они абсолютно правы!
А истинно "хитроумные" они тогда, когда палец АП промахивается и попадает на не ту клавишу! :)
← →
nikkie © (2005-05-24 01:43) [17]как хорошо, когда все хорошо кончается. а то я уж думал, что будет как вчера (точно такой же вопрос и точно такой ;t первый ответ):
http://delphi.vline.ru/cgi-bin/forum.pl?id=1115493894&n=0
ЗЫ "как вчера" - это из анекдота, а не ссылка на временной интервал :)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.012 c