We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent a77de02 commit 1f4e774Copy full SHA for 1f4e774
algorithms/recursion/exponentiation.py
@@ -2,17 +2,20 @@
2
def exponentiation(baseNumber, power):
3
answer = None
4
5
- if power == 1:
6
- answer = baseNumber
7
-
8
- elif power == 2:
9
- answer = baseNumber * baseNumber
10
11
- else:
+ if power > 1:
12
halfAnswer = exponentiation(baseNumber, power//2)
13
answer = halfAnswer * halfAnswer
14
15
if power%2 == 1:
16
answer *= baseNumber
17
18
- return answer
+ elif power == 1:
+ answer = baseNumber
+
+ elif power == 0:
+ answer = 1
+ else: # negative power
19
+ answer = 1 / exponentiation(baseNumber, abs(power))
20
21
+ return answer
0 commit comments