数值的整数次方

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

思路

分情况讨论,注意exponent大于0和小于0的情况。

solution

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def (self,base,exp):
result = 1
if base == 0:
return 0
elif exp == 0:
return 1
elif exp ==1:
return base
elif exp > 0:
for i in range(0,exp):
result *= base
return result
elif exp < 0:
for i in range(0,abs(exp)):
result *= base
return 1/result

也可利用python中的pow()函数。

1
2
3
4
5
6
7
8
9
def (self, base, exp):
if base==0:
return 0
elif exp==0:
return 1
elif expt==1:
return base
else:
return pow(base,exp)