Ver Mensaje Individual
  #6  
Antiguo 02-12-2005
piccolo2101 piccolo2101 is offline
Miembro
 
Registrado: oct 2005
Posts: 63
Reputación: 19
piccolo2101 Va por buen camino
Te explico un poco lo del tema con modificaciones...

const
MonthDays: array [1..12] of byte =(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

function DaysInAMonth(const AYear, AMonth: Word): Word;
begin
// Miramos si es febrero y año bisiesto, para ello usamos la función
// del tema que te comento héctor isLeapYear
if (AMonth = 2) and (isLeapYear(AYear)) then
Result := MonthDays[AMonth] + 1 // De ser así se pone 29 días a feb.
else
Result := MonthDays[AMonth]; // En otro caso los días salen de la tabla.
end;

function IsLeapYear(Year: Word): Boolean;
begin
Result := (Year mod 4 = 0) and ((Year mod 100 <> 0) or (Year mod 400 = 0));
end;
Responder Con Cita