La siguiente funcion booleana recibe como parametro un año y da como resultado TRUE si ese año es bisiesto y FALSE en caso contrario.
Un ano es bisiesto cuando, o bien es divisible por 4 pero no por 100, o bien es divisible por 400
FUNCTION ANO_BISIESTO(ano : INTEGER):BOOLEAN;
VAR
bisiesto : BOOLEAN;
BEGIN
IF (((ano MOD 4) = 0) AND ((ano MOD 100) <> 0)) OR ((ano MOD 400) = 0) THEN
bisiesto:=TRUE {Es ano bisiesto}
ELSE
bisiesto:=FALSE; {No es ano bisiesto}
ANO_BISIESTO:=bisiesto;
END; {FIN ANO_BISIESTO}