int power (int b, int e) { int p = 1; while (e > 0) { // inv: b^e * p = b0 ^ e0 if (odd (e)) { p = p * b; } b = b * b; e = e / 2; // abgerundet } return p; }
9 23 9 81 => 26 11 234 => 14 676 => 16 5 224 => 4 256 => 36 2 4 1296 => 31 1 124 => 14