Math problem
Paul Dupuis
paul at researchware.com
Mon Feb 13 15:48:09 EST 2012
FUNCTION countTheHours2 pStartTime, pEndTime, pIncrement
IF pIncrement is empty THEN put 900 into pIncrement -- pIncrement is
in seconds. So 900 is 15 minutes. Do not use zero. 1 is minimum.
TRY
convert pStartTime to seconds
convert pEndTime to seconds
put (round(((pEndTime - pStartTime) / pIncrement),0) /
(3600/pIncrement)) into theResult
-- take the difference in pIncrement units, rounded up and
divided by number of increments per hour to get hours
CATCH theError
put "ERROR: Not a valid time!" into theResult
END TRY
return theResult
END countTheHours2
On 2/13/2012 3:12 PM, Bob Sneidar wrote:
> FUNCTION countTheHours pStartTime, pEndTime, pIncrement
> IF pIncrement is empty THEN put 0 into pIncrement
>
> TRY
> convert pStartTime to seconds
> convert pEndTime to seconds
> put ((pEndTime - pStartTime) / 3600) into theTotalTime -- decimal hours
> put (theTotalTime div pIncrement) * pIncrement into theResult -- integer hours
> put theTotalTime mod pIncrement into theModulus -- modulus
> IF theModulus is not 0 THEN add pIncrement to theResult
> CATCH theError
> put "ERROR: Not a valid time!" into theResult
> END TRY
>
> return theResult
> END countTheHours
--
Paul Dupuis
Cofounder
Researchware, Inc.
http://www.researchware.com/
http://www.twitter.com/researchware
http://www.facebook.com/researchware
http://www.linkedin.com/company/researchware-inc
More information about the use-livecode
mailing list