In Lisp, this comes out to 10 with 0 remainder.<p><pre><code> > (floor 4 0.4)
10
0.0
</code></pre>
Doesn't python return the remainder? It would be interesting to see what happened to give an answer of 9. If it is because of floating point (which is silly when dealing with such low numbers and producing such off-the-wall results) then maybe it is incorrectly getting 9.9999... for the division, and not returning the remaining .9999...