>The mod command gives stange results when done this way:
>Mod(-13,4). I would expect this to return either 1 or -1 but it returns 3.
>Visual Basic return -1 for this command but Ruby return the same thing as VFP. Can someone explain this to me.... Thanks.
None bug.
This is a different definition ( many exists )
The VFP,Ruby,Excel,... definition is the best because it return 4 different results
with the 4 sign cases
? MOD(+13,+4)
? MOD(+13,-4)
? MOD(-13,+4)
? MOD(-13,-4)
<-pre>
Another definition is (SQL SERVER,...):
... return the MINIMAL absolute remainder with the divisor sign
<pre>
? MOD2(+13,+4)
? MOD2(+13,-4)
? MOD2(-13,+4)
? MOD2(-13,-4)
FUNCTION MOD2(n,d)
RETURN SIGN(m.d)*MOD(ABS(n),abs(d))