题目描述:给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
分析:拿到此题目的时候我们首先考虑的就是各种边际条件,此题主要靠我们的也是边界条件的处理,对于边界条件的考虑,我们主要考虑:
(1)base是否为0,在为0的时候exponent是否为小于0
(2)exponent为0,大于0,小于0的情况
代码编写如下所示:
class Solution {
public:
double Power(double base, int exponent) {
double res=1;
if(base==0&&exponent<0)
return -1;
if(base==0)
return 0;
else if(exponent==0)
return 1;
else if(exponent>0)
{
for(int i=1;i<=exponent;i++)
{
res*=base;
}
}
else if(exponent<0)
{
for(int i=1;i<=-exponent;i++)
{
res*=base;
}
}
return (exponent>0)?res:(1/res);
}
};