此题出自牛客网的剑指offer专题
题目描述
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
这道题的第一感觉还是比较简单的,无非就是累乘而已,但是要注意读题,因为这里整数exponent只是说是int类型的整数,也就是说可能是正数也可能是负数。但注意到这点之后就比较简单了。如果是负数,则返回正数的倒数即可。
代码如下:
Java版本:
public class Solution {
public double Power(double base, int exponent) {
double result = 1.0;
int n = Math.abs(exponent);
for(int i=0;i<n;i++){
result = result*base;
}
return exponent>=0? result:1/result;
}
}
C++版本:
class Solution {
public:
double Power(double base, int exponent) {
double result = 1.0;
int n = exponent>=0? exponent:(-exponent);
for(int i=0;i<n;i++){
result = result*base;
}
return exponent>=0? result:1/result;
}
};