/* Mystery function with a bug or two * * 15-122 Principles of Imperative Computation, Spring 2011 * Frank Pfenning */ int f (int x, int y) { int r = 1; while (y > 1) { if (y % 2 == 1) r = x * r; x = x * x; y = y / 2; } return r * x; }