|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.02.2007, 23:26 | #1 |
Новичок
Джуниор
Регистрация: 14.02.2007
Сообщений: 1
|
определение кол-ва дней в месяце
как по значению года и месяца определить кол-во дней в данном месяце?
|
14.02.2007, 23:27 | #2 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
январь 31 день. февраль 28 или 29... это просто знать надо. Вообще не понял вопроса .
Если что-то известно заранее, то создаёться таблица соответсвия, некоторые любят называть это "Кеш" |
14.02.2007, 23:36 | #3 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
procedure Tfmain.ButtonDateCalcClick(Sender: TObject);
var dt: TDate; y,m,d: word; begin y:=1987; m:=2; //сколько дней в феврале 1987 года? dt:=EncodeDate(y,m+1,1)-1; DecodeDate(dt,y,m,d); MonthCalendar1.Date:=dt; //для наглядности ShowMessage('В феврале 1987 года '+IntToStr(d)+' дней'); end; |
15.02.2007, 07:21 | #4 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
Вот как реализован ответ на твой вопрос в Delphi в модуле Calendar.pas
function TCalendar.IsLeapYear(AYear: Integer): Boolean; begin Result := (AYear mod 4 = 0) and ((AYear mod 100 <> 0) or (AYear mod 400 = 0)); end; function TCalendar.DaysPerMonth(AYear, AMonth: Integer): Integer; const DaysInMonth: array[1..12] of Integer = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); begin Result := DaysInMonth[AMonth]; if (AMonth = 2) and IsLeapYear(AYear) then Inc(Result); { leap-year Feb is special } end; function TCalendar.DaysThisMonth: Integer; begin Result := DaysPerMonth(Year, Month); end; Думаю коментарии с моей стороны будут лишними.
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
КАЛЫМ на ПАРУ ДНЕЙ (PHP + Delphi) = $ | BoryaPop | Фриланс | 8 | 24.05.2008 21:56 |
Добавление кол-во дней в дату | D@rk M@k | Общие вопросы Delphi | 1 | 19.04.2008 10:19 |
Подсчёт кол-ва дней | ivp88 | БД в Delphi | 7 | 14.01.2008 09:16 |
Как сделать отсчет дней от заданной даты в Excel? | ru16 | Microsoft Office Excel | 1 | 22.11.2007 11:13 |
число дней в месяце конкретного года (Excel) | Andrew_R | Microsoft Office Excel | 2 | 28.10.2007 21:22 |