题目描述

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

保证base和exponent不同时为0

解题思路

需要判断base 和 exponent 是否为0的情况 和 exponent为负数的情况。

代码实现

class Solution {
public:
double Power(double base, int exponent) {
if(base == 0)
return 0;
if(exponent == 0)
return 1;
double result = 1;
if (exponent > 0)
{
for (int i = 0; i < exponent; i++)
result *= base;
return result;
}
if (exponent < 0)
{
for (int i = 0; i < -exponent; i++)
result *= base;
return double(1 / result);
}
}
};

当然,本题有一个非常简便的方法如下,一段代码直接搞定。

class Solution {
public:
double Power(double base, int exponent) {
return pow(base, exponent);
}
};