Последовательность Fibonacci начинается с 0, а затем 1 следует. Все последующие значения представляют собой сумму предыдущих двух, пример: 0, 1, 1, 2, 3, 5, 8, 13. Заполните функцию fibonacci (), которая имеет индекс n как параметр и возвращает N -й значение в последовательности. Любые значения отрицательного индекса должны вернуть -1. < /P>
ex: если вход: < /p>
Код: Выделить всё
7
< /code>
Выход: < /p>
fibonacci(7) is 13
< /code>
Примечание: используйте для цикла и не используйте рекурсию. < /p>
def fibonacci(n):
a = 0
b = 1
for i in range(1,n):
global c
c = a + b
a = b
b = c
return c
if __name__ == '__main__':
start_num = int(input())
print(f'fibonacci({start_num}) is {fibonacci(start_num)}')
Пока что я получаю правильные числа, и мне еще предстоит добавить проблему -1, но моя основная проблема состоит в том, что код говорит, что когда я ввожу 0 или -1, он говорит мне «Имя» не определено »
Подробнее здесь:
https://stackoverflow.com/questions/774 ... code-works