You must have missed the bit where I noted that dropping the floating point information and rounding down are essentially the same thing. No floating point involved, other than the result of i / j, which is cast to integer automatically. It's exactly the same mistake as the first, just without an explicit cast. /EDIT: Look, basically it's nitpicking, but calling it rounding is in my mind misleading at best since as you clearly know it only 'rounds down', by truncating any floating point information completely. This is more akin to finding the floor of the number than actual rounding (which can go both ways).