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

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

Порядковый номер дня в году [D7, WinXP]


kyn66 ©   (2006-04-18 17:03:00) 

Мастера! Есть-ли механизм, чтобы определить САБЖ?


kilkennyCat   (2006-04-18 19:14:00) [1]


> А это не подгонка? ;-)


DaysBetween counts only whole days. Thus, DaysBetween reports the difference between Dec 31, 1999 11:59 PM and Jan 1, 2000 11:58 PM as 0 because the difference is one minute short of an entire day.


kyn66   (2006-04-18 19:11:00) [2]

А это не подгонка? ;-)
Вот нашел, вроде правильно работает

(DayOfTheYear(StrToDate('10.04.2006')));


Anatoly Podgoretsky   (2006-04-18 18:58:00) [3]

+1


kyn66   (2006-04-18 18:49:00) [4]

Хотя проверил и получил...

DaysBetween(StrToDate('01.01.2006'), StrToDate('10.04.2006'))


По идее должно быть 100, а получается 99, почему?


kyn66   (2006-04-18 18:03:00) [5]

> Desdechado
Если тока так, то спасибо за ликбез 8-)


Desdechado   (2006-04-18 18:01:00) [6]

> как контролируется високосный год
елы-палы, ты подумать можешь?
разница между 2 датами дает твой порядковый день года, а в представлении типа "дата" уже учитываются все високосности и прочие ...


kyn66   (2006-04-18 17:45:00) [7]

Вот нашел, и что тут можно понять про високосный год?

function DayOfTheYear(const AValue: TDateTime): Word;
begin
 Result := Trunc(AValue - StartOfTheYear(AValue)) + 1;
end;
....

function StartOfTheYear(const AValue: TDateTime): TDateTime;
begin
 Result := EncodeDate(YearOf(AValue), 1, 1);
end;
...

function YearOf(const AValue: TDateTime): Word;
var
 LMonth, LDay: Word;
begin
 DecodeDate(AValue, Result, LMonth, LDay);
end;


Игорь Шевченко   (2006-04-18 17:38:00) [8]


> а как контролируется високосный год?.


А у фукнции наверняка исходный текст есть.


kyn66   (2006-04-18 17:36:00) [9]

Хм... ДА, действительно нашел функцию DayOfTheYear, а как контролируется високосный год?. А спросил про механизм потому, что нужно применить не только в Дельфи.


MBo   (2006-04-18 17:07:00) [10]

Да. Механизм такой - открываем хелп и начинаем набирать DayOf и выбираем нужное


Desdechado   (2006-04-18 17:06:00) [11]

а подумать?
из текущей даты вычитаешь 1 января


Наверх

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