美文网首页剑指offer
16_数值的整数次方

16_数值的整数次方

作者: 是新来的啊强呀 | 来源:发表于2020-05-19 21:40 被阅读0次

    要求:给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。保证base和exponent不同时为0

    分析:要考虑指数为负数的情况,若为负数,结果取倒数

    public static double Power(double base, int exponent){
            if(exponent == 0){
                // 指数为0时,返回0
                return 0;
            }
            if(exponent == 1){
                // 指数为1时,返回它本身
                return base;
            }
            // isNegative判断指数是否为负数
            boolean isNegative = exponent<0;
            double result = 1;
            // 将指数取绝对值
            exponent = exponent>=0? exponent:(-exponent);
            for(int i=1;i<=exponent;i++){
                result = result*base;
            }
            // 返回时,若指数为负数,则结果取倒数,其他直接输出
            return isNegative? 1/result:result;
        }
    

    相关文章

      网友评论

        本文标题:16_数值的整数次方

        本文链接:https://www.haomeiwen.com/subject/dwbiohtx.html