http://techiworks.com/how-is-rounding-performed-under-integer-division/