Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как из массива который содержит список нескольких DataTime [D7, WinXP]


Dreamse ©   (2007-06-26 07:50:00) 

Выбрать тот DataTime который наиболее приближен к текущему времени ?

Имеем список DataTime ( В массиве )

1) 01.01.2007 22:22:32
2) 01.02.2007 42:32:12
3) 02.01.2007 32:11:32
4) 14.08.2006 23:43:12

вопрос : Каким образом пробежаться по массиву и получить тот DateTime который наиболее приближен к текущей дате - времени ?

На ум приходит куча циклов есть ли более красивое и простое решение ?


oldman   (2007-06-26 15:19:00) [1]


> MBo ©   (26.06.07 08:12) [3]


Пока цикл выполняется текущее время изменится и результат может оказаться неверным...

:)))


Dreamse   (2007-06-26 08:31:00) [2]

Спасибо


MBo   (2007-06-26 08:12:00) [3]

DiffMin := 1e6;
ANow := Now;
for i := 0 to High(D) do begin
 Diff := Abs(D[i] -Now);
 if  Diff < DiffMin then begin
   DiffMin := Diff;
   imin := i;
 end
end


Dreamse   (2007-06-26 08:00:00) [4]

> MBo ©   (26.06.07 07:54) [1]

После бессонной ночи голова совсем не варит :)
Подскажи как сравнивать


MBo   (2007-06-26 07:54:00) [5]

Зачем куча, если одного цикла достаточно???


Наверх

Титульная страница Поиск, карта сайта Написать письмо