![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить сколько дней в заданном месяце [D6]
Igor_ © (2002-02-25 12:50:00)Как определить сколько дней в заданном месяце
MrBeer (2002-02-25 17:24:00) [1]
// (c) RxLib
function LeapYear(year: integer): boolean;
begin
Result := (Year mod 4 = 0) and ((Year mod 100 <> 0) or (Year mod 400 = 0));
end;
Function GetDaysInMonth(year,month:integer):integer;
const
DaysInMonth: array[1..12] of Integer =
(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
begin
Result := DaysInMonth[Month];
if (Month = 2) and LeapYear(Year) then Inc(Result); { leap-year Feb is special }
end;
Igor_ (2002-02-25 13:26:00) [2]To Woron:
Какой модуль надо указать в Uses
Woron (2002-02-25 13:18:00) [3]и посмотри еще date/time routines
много интересного найдешь
Woron (2002-02-25 13:17:00) [4]from help
function DaysInAMonth(const AYear, AMonth: Word): Word;
Description
Call DaysInAMonth to obtain the number of days in the specified month of the specified year.
AYear is a year between 1 and 9999 (inclusive).
AMonth is a month between 1 and 12 (inclusive).
VictorT (2002-02-25 13:00:00) [5]Вроде уже недавно было, но всё-таки:
int DaysPerMonth(unsigned short year, unsigned short month)
{
++month;
if (month == 13) {
month = 1;
++year;
}
TDateTime dt = EncodeDate(year, month, 1);
--dt;
unsigned short days;
dt.DecodeDate(&year, &month, &days);
return days;
}