题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
思路分析
先判断底数是否合法,再判断幂数的特殊情况0,然后获得次方的值,循环累乘,最后根据幂数正负得到最终结果。
代码实现
public double Power(double base, int exponent) {
if (base == 0) {
return 0;
}
double res = 1;
if (exponent == 0) {
return res;
}
int n = exponent > 0 ? exponent : -exponent;
for (int i = 1; i <= n; i++) {
res*=base;
}
return exponent >= 0 ? res : (1 / res);
}