数值的整数次方

2017-10-02  本文已影响0人  哦漏昵称已被占用
题目描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

注意:exponent是0或者负数的情况。
exponent是负数时,结果是正数时的倒数,如果2-3=1/(23).
而当exponent是负数,base是0时,不能取倒数,因为对0取倒数非法;
当exponent是0时,整数的0次方是1.0

class Solution {
public:
    double Power(double base, int exponent) {
        double sum=1.0;
        if((base-0)<0.0000001 && (base-0)>-0.0000001 && exponent<0 )
            return 0.0;
        if(exponent==0)
            return 1.0;
        int e=exponent;
        if(e<=0)
            e=-e;
        while(e){
            sum*=base;
            e--;
        }
        if(exponent<0)
            sum=1/sum;
        return sum;
    }
};
上一篇下一篇

猜你喜欢

热点阅读