Funky Beast schreef:
Hi,

When trying to get the number of months between the following dates:
01-06-2009 and 01-08-2008

MonthsBetween returns: 9 months.

That is clearly wrong (fundamentally counting with my fingers yields 10 months). Looking at the function in dateutils.inc, I copied the function implementation to do a test.
Now, if I strip away Trunc() from the function, the result is: 9.98767967.
Trunc() simply strips away the decimals behind, which returns: 9.

I'm wondering if Round() should be used instead of Trunc().


For such easy question, I use google:
http://lmgtfy.com/?q=monthsbetween

http://www.freepascal.org/docs-html/rtl/dateutils/monthsbetween.html states that "This number is an approximation, based on an average number of days of 30.4375 per month". 9 is approximately 10, so the is behavior you see is as documented ;-)

Vincent
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to