Microsoft KB Archive/100438: Difference between revisions

From BetaArchive Wiki
(importing KB archive)
 
m (Text replacement - """ to """)
 
Line 15: Line 15:


<pre>  ans = isleap({05/21/92})
<pre>  ans = isleap({05/21/92})
   WAIT WINDOW &quot;1992 is &quot; + iif(ans, &quot;&quot;&quot;not &quot;) + &quot; a leap year &quot;
   WAIT WINDOW "1992 is " + iif(ans, """not ") + " a leap year "


   ***********************************************************
   ***********************************************************
Line 25: Line 25:
   PARAMETERS mdate
   PARAMETERS mdate
   myear = YEAR(mdate)
   myear = YEAR(mdate)
   march1  = &quot;03/01/&quot; + STR(myear,4,0)
   march1  = "03/01/" + STR(myear,4,0)
   lastFeb = ctod(march1)-1
   lastFeb = ctod(march1)-1
   RETURN IIF(DAY(lastFeb)=29,.T.,.F.)
   RETURN IIF(DAY(lastFeb)=29,.T.,.F.)

Latest revision as of 13:29, 19 July 2020

Function to Determine If a Year Is a Leap Year

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


Last Reviewed: June 27, 1995
© 1999 Microsoft Corporation. All rights reserved. Terms of Use.