Extrait du rapport Haskell :
La classe quot, rem, div et mod satisfont à ces lois si y est non nul :
(x `quot` y)*y + (x `rem` y) == x (x `div` y)*y + (x `mod` y) == x
quot
est une division entière tronquée vers zéro, alors que le résultat dediv
est tronquée vers l'infini négatif.
Par exemple :
Prelude> (-12) `quot` 5
-2
Prelude> (-12) `div` 5
-3
Quels sont les exemples où la différence entre la façon dont le résultat est tronqué est importante ?