数值的整数次方

题目描述

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

思路

这道题主要是考虑问题的多种情况。

  1. 底数为0,返回0。 特殊的对于0的0次方没有意义,可以当0返回。
  2. 指数>0,正常运算。
  3. 指数<0,先按大于0计算,然后取倒数。在底数为0的情况下,这种情况应该返回0或者主动报错。

代码

class Solution:
    def Power(self, base, exponent):
        if base == 0:
            return 0
        if exponent == 0:
            return 1
        if exponent > 0:
            ans = self.computeNum(base,exponent)
        if exponent < 0:
            ex = -1*exponent
            temp_ans = self.computeNum(base,ex)
            ans = 1/temp_ans
        return ans
    def computeNum(self,base,ex):
        ans = 1
        for i in range(1,ex+1):
            ans = ans*base
        return ans

你可能感兴趣的:(数值的整数次方)