JZ12 数值的整数次方
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
思路
需要考虑base和exponent分别为0的情况,还有exponent的正负情况
base=0时,结果为0;
exponent=0时,结果为1;
exponent>0时,结果为exponent个base相乘(循环)
exponent<0时,结果为倒数
代码
class Solution { public: double Power(double base, int exponent) { double res=1; if(base==0) return 0; if(exponent==0) return 1; if(exponent>0) { for(int i=0;i<exponent;i++) res*=base; } else { for(int i=0;i<-exponent;i++) res*=base; res=1/res; } return res; } };
测试
考虑底数和指数分别为正数,负数和0