Microsoft KB Archive/100438

{| = Function to Determine If a Year Is a Leap Year =
 * width="100%"|

ID: Q100438

The information in this article applies to:


 * Microsoft FoxPro for MS-DOS, versions 2.0, 2.5 and 2.5a
 * Microsoft FoxPro for Windows, versions 2.5 and 2.5a

SUMMARY
To determine if year is a leap year, use the following function, which returns .T. if a date is in a leap year:

ans = isleap({05/21/92}) WAIT WINDOW "1992 is " + iif(ans, "", "not ") + " a leap year "

***********************************************************  * Notes: This function subtracts one day from March 1. *       If the result is the 29th, the year is a leap year. *       If it is the 28th, then it is not a leap year. ***********************************************************  FUNCTION isleap PARAMETERS mdate myear = YEAR(mdate) march1 = "03/01/" + STR(myear,4,0) lastFeb = ctod(march1)-1 RETURN IIF(DAY(lastFeb)=29,.T.,.F.) Additional reference words: FoxWin FoxDos 2.00 2.50 2.50a KBCategory: kbprg KBSubcategory: FxprgGeneral
 * }