/**
* @Name:
* @Description:
* @Author: Allen
*/
public class PowerCalculate16 {
public static void main(String[] args) {
Solution16 solution16= new Solution16();
System.out.println(solution16.Power(3.4, -2));
}
}
class Solution16 {
public double Power(double base, int exponent) {
if(base==0 && exponent<0){//底数为0,抛出异常
throw new RuntimeException("0 can not be denominator");
}
int absNum=exponent;
if(exponent<0)//考虑到指数为负数的情况
absNum=-exponent;
double result=calculatePower(base,absNum);
if(exponent<0) result=1/result;
return result;
}
private double calculatePower(double base, int exponent){
double result=1;
for(int i=1; i<=exponent; i++){
result*=base;
}
return result;
}
}