題目描述
給定一個(gè)double類型的浮點(diǎn)數(shù)base和int類型的整數(shù)exponent择镇。求base的exponent次方。
注意:exponent是0或者負(fù)數(shù)的情況。
exponent是負(fù)數(shù)時(shí),結(jié)果是正數(shù)時(shí)的倒數(shù)千绪,如果2-3=1/(23).
而當(dāng)exponent是負(fù)數(shù),base是0時(shí)梗脾,不能取倒數(shù)荸型,因?yàn)閷?duì)0取倒數(shù)非法;
當(dāng)exponent是0時(shí)藐唠,整數(shù)的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;
}
};