Pull to refresh
1
Send message
просто изучаю Python и ищу, где можно лишний раз потренироваться :)
это мой 1й пост на хабре — не подумал про теги…
def le_fib(limit, fib):
	theoretical = fib[-1] + fib[-2]
	if theoretical > limit:
		return fib[-1]
	fib.append(theoretical)
	return le_fib(limit, fib)

def main(target,result):
	temporary = le_fib(target, [1,1])
	result.append(temporary)
	if target - temporary <= 0:
		return result 
	return main(target - temporary, result)

i=int(input('Enter i: '))
print(main(i,[]))
вот перевел алгоритм на Python:
def le_fib(limit, fib):
theoretical = fib[-1] + fib[-2]
if theoretical > limit:
return fib[-1]
fib.append(theoretical)
return le_fib(limit, fib)

def main(target,result):
temporary = le_fib(target, [1,1])
result.append(temporary)
if target — temporary <= 0:
return result
return main(target — temporary, result)

i=int(input('Enter i: '))
print(main(i,[]))

Information

Rating
Does not participate
Registered
Activity