Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.04;
Скачать: CL | DM;

Вниз

Одним сравнением проверить корректность даты..   Найти похожие ветки 

 
ArtemESC ©   (2006-05-07 12:53) [0]

Совсем запутался - целый час парюсь, как это сделать, написал следующее,но явно что-то очень грамоздское(на правильность не проверял) Как это сделать...

   If (Day > 0) and (Month > 0) and (Day < 32) and (Month < 13) and
    (
      (Day < 28) or
      ( (Day > 28) and (Month <> 2)) or
      ( (Day <= 29) and (Month = 2) and (Year div 4 = Year / 4)) or
      ( (Day = 31) and ((Month = 1)) or
      ( (Day = 31) and ((Month = 3)) or
      ( (Day = 31) and ((Month = 5)) or
      ( (Day = 31) and ((Month = 7)) or
      ( (Day = 31) and ((Month = 8)) or
      ( (Day = 31) and ((Month = 10)) or
      ( (Day < 31) and ((Month = 12)) or
      ( (Day < 31) and ((Month = 4)) or
      ( (Day < 31) and ((Month = 6)) or
      ( (Day < 31) and ((Month = 9)) or
      ( (Day < 31) and ((Month = 11))
          ) then


 
Palladin ©   (2006-05-07 12:58) [1]

TryEncodeDate


 
ArtemESC ©   (2006-05-07 12:59) [2]

Palladin ©   (07.05.06 12:58) [1]
Забыл сказать - на BP...


 
Gero ©   (2006-05-07 13:03) [3]

> ArtemESC ©   (07.05.06 12:59)

Функция TryEncodeDate поставляется вместе с исходником.


 
SergP ©   (2006-05-07 13:20) [4]

Все месяцы кроме февраля можно так:


Day <= ((month xor (month shr 3)) or 30)


 
SergP ©   (2006-05-07 13:26) [5]


> (Year div 4 = Year / 4)


1. Не знаю как будет работать сравнение целого числа с вещественным...

2. Определение високосного года неправильное.

Високосным годом называется год если его номер делится на 4 за исключением тех, которые делятся на 100, но не делятся на 400.


 
Marser ©   (2006-05-07 13:55) [6]

Можно использовать уже написанные библиотеки. Автор, проверь почту.


 
ArtemESC ©   (2006-05-07 15:28) [7]

Marser ©   (07.05.06 13:55) [6]
Thanks



Страницы: 1 вся ветка

Текущий архив: 2006.06.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.048 c
15-1147322759
pavelf
2006-05-11 08:45
2006.06.04
Удаление папки


2-1147893173
valduk
2006-05-17 23:12
2006.06.04
Папка


15-1147515404
Verg
2006-05-13 14:16
2006.06.04
Глубины INDY. Вывеска не соответствует.


1-1145985711
Dmitry_177
2006-04-25 21:21
2006.06.04
Класс для хранения в файле списка списков


15-1147252218
vlad1222
2006-05-10 13:10
2006.06.04
Компоненты для Com порта