Function to Determine If a Year Is a Leap Year

ID: Q100438

The information in this article applies to:

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

Last Reviewed: June 27, 1995