/** * Returns a number between kLowerBound and kUpperBound * e.g.: Wrap(-1, 0, 4); // Returns 4 * e.g.: Wrap(5, 0, 4); // Returns 0 */ int Wrap(int con
For negative kX, you can add:
int temp = kUpperBound - kLowerBound + 1; while (kX < 0) kX += temp; return kX%temp + kLowerBound;