2008년 6월 3일 화요일

윤년 계산; a leap year; an intercalary year

// 윤년 계산 루틴
// check IsLeapYear.
function IsLeapYear(Year: Word): Boolean;
begin
Result := (Year mod 4 = 0) and ((Year mod 100 <> 0) or (Year mod 400 = 0));
end;

// 윤년 여부에 따른 월별 날 수 테이블
// if year is a leap year then MonthDay:=array[1] else MonthDay:=array[0];

MonthDays: array [Boolean] of TDayTable =
((31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31), (31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31));