Sri Kavi wrote: > Like I just said in my other message, I was trying to reply to Tasha > Burman, but I was in digest mode and I didn't know how to change my > subscription options in order to reply to individual messages. I also > don't know if it's an assignment, but I'm a beginner learning to program, > too :) > >>What if any of the following are true, and what should be done in each > case? >> if exponent ==1: ..... >> if exponent = 0: ..... >> if exponent < 0: ..... > > Here's my implementation.
> In Python 3.6.0 > > def power(base, exponent): > if exponent == 0: > return 1 > elif exponent > 0: > result = base > > for _ in range(1, exponent): > result *= base > > return result > else: > exponent = -exponent > result = base > > for _ in range(1, exponent): > result *= base > return 1 / result > > Please share your thoughts. You can try to simplify that a bit: - Handle the case with non-negative exponents in one branch - Avoid duplicating the for loop for negative exponents, e. g. by calling power() from within power() Once you have that working you can play around a bit, e. g. - try an alternative implementation using recursion instead of a loop - modify the code to minimize the number of multiplications it needs to perform to get the result _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor