数值的整数次方

public class Solution {
    public double Power(double base, int exponent) {
        if(base==0.0 && exponent <0){
            throw new RuntimeException("invalid input");
        }
        int absoluteExponent = exponent;
        if(exponent <0 ){
         absoluteExponent = -exponent;
        }
        double tmpResult = selfPower(base,absoluteExponent);
        if(exponent < 0 ){
            return 1/tmpResult;
        }
        return tmpResult;
  }
    
    double selfPower(double base,int exponent){
        double tmpResult = 1.0;
        for(int i = 0;i<exponent;i++){
            tmpResult = tmpResult*base;
        }
        return tmpResult;
    }
    
}

主要是考虑base为0,指数为负数的特殊情况

posted @ 2019-11-23 11:58  会飞的企鹅吧  阅读(115)  评论(0编辑  收藏  举报