Increment is defined as:
def increment(x):
return x + 1
The following works, and spits out a result of 8:
def repeated(f, n):
def h(x):
counter = 0
while counter < n:
x = f(x)
counter += 1
return x
return h
addthree = repeated(increment,3)
addthree(5)
The following code errors and tells me that i am referencing n before assignment:
def repeated3(f,n):
def h(x):
total=0
while n != 0:
total = f(x) + total
n -= 1
return total
return h
addthree = repeated(increment,3)
addthree(5)
why does the error throw when i try to decrement n, even though i am allowed to use it in the logic statement that precedes it?