一、题目描述:
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。
保证base和exponent不同时为0
二、解题思路:
C++实现:思路,求base的exponent,即将base连乘exponent次
class Solution {
public:
double Power(double base, int exponent) {
//任何数的0次方为1
if (exponent == 0){
return 1;
}
//考虑exponent为正负的情况
double res = 1;//初始化返回结果为1,注意返回值类型为double型
int absExponent = abs(exponent);
for(int i = 0; i < absExponent;i++)
res *= base;
if(exponent < 0)
res = 1 / res;
return res;
}
};
python:
# -*- coding:utf-8 -*-
class Solution:
def Power(self, base, exponent):
# write code here
if exponent == 0:
return 1
absExponent = abs(exponent)
ans = 1
for i in range(absExponent):
ans *= base
if exponent < 0:
ans = 1 / ans
return ans
python实现:python提供了pow()函数计算数值得整数次方
# -*- coding:utf-8 -*-
class Solution:
def Power(self, base, exponent):
# write code here
return pow(base,exponent)