27 lines
703 B
Java
27 lines
703 B
Java
|
|
public class PowerFunction {
|
||
|
|
public static int power(int base, int exp) {
|
||
|
|
if (exp == 0) {
|
||
|
|
return 1;
|
||
|
|
}
|
||
|
|
if (exp == 1) {
|
||
|
|
return base;
|
||
|
|
}
|
||
|
|
int half = power(base, exp / 2);
|
||
|
|
if (exp - (exp / 2) * 2 == 0) {
|
||
|
|
return half * half;
|
||
|
|
}
|
||
|
|
return base * half * half;
|
||
|
|
}
|
||
|
|
|
||
|
|
public static int main() {
|
||
|
|
System.out.println(power(2, 0));
|
||
|
|
System.out.println(power(2, 1));
|
||
|
|
System.out.println(power(2, 3));
|
||
|
|
System.out.println(power(2, 5));
|
||
|
|
System.out.println(power(2, 10));
|
||
|
|
System.out.println(power(3, 4));
|
||
|
|
System.out.println(power(5, 3));
|
||
|
|
return 0;
|
||
|
|
}
|
||
|
|
}
|