.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { double sol = 1; for (int j = 0; j < p; ++j) sol *= b; return sol; }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { return p ? b * potencija(b, p - 1) : 1; }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { if (!p) return 0; if (p % 2) { return b * potencija(b, p - 1); } else { return potencija(b, p / 2) * potencija(b, p / 2); } }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { if (p % 2) { return b * potencija(b, p - 1); } else { double tmp = potencija(b, p / 2); return tmp * tmp; } }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { if (p % 2) { return b * potencija(b, p - 1); } else { double tmp = potencija(b, p / 2); return p ? tmp * tmp : 1; } }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { double tmp = potencija(b, p / 2); if (p % 2) { return tmp * tmp * b; } else { return p ? tmp * tmp : 1; } }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { double sol = 1; for (unsigned int mask = (1<<31); mask; mask >>= 1) sol = (sol * sol) * (mask & p ? b : 1); return sol; }
.
.
.
.
.
.
.
.
.
.
.
.
double potencija(double b, unsigned int p) { double sol = 1; for (; p; p/=2) { if (p & 1) sol *= b; b *= b; } return sol; }
Ovaj Ĩlanak objavljen je pod
Creative Commons Attribution-ShareAlike 3.0 Croatia License