剑指Offer_编程题
数值的整数次方
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
double Power(double base, int exponent) {
double result = 0;
result = base;
int len = abs(exponent);
for(int i=1;i<len;i++)
result = result*base;
if(exponent < 0)
result = 1/result;
else if(exponent == 0)
result = 1;
return result;
}
分析:
需要注意的是exponent的值,
- exponent==0,无论base为何值,结果均为1,任何数的0次方都为1;
- exponent < 0,base的exponent次方等于base的exponent绝对值次方的倒数;
- exponent > 0,base的exponent次方等于exponent个base相乘;