Программа генерирует числа Фибоначчи от 1 до 100. Чи́сла Фибона́ччи — элементы последовательности
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, …
(последовательность A000045 в OEIS), в которой каждое последующее число равно сумме двух предыдущих чисел. Названы в честь средневекового математика Леонардо Пизанского (известного как Фибоначчи).
Более формально, последовательность чисел Фибоначчи F_n задаётся линейным рекуррентным соотношением: $$F_{n}=F_{n-1}+F_{n-2} $$
def fibonacci(max): # генератор (а не функция, т.к. оператор return заменён на yield)
a, b = 0, 1
while a < max:
yield a # return a, + запоминаем место рестарта для следующего вызова
a, b = b, a + b # параллельное присваивание,
#которое выполняется одновременно и параллельно
for n in fibonacci(100): # используем генератор fibonacci() как итератор
print (n) # печатаем все числа Фибоначчи меньшие 100 через пробел
Вывод результата: 0
1
1
2
3
5
8
13
21
34
55
89
2015-11-28 • Просмотров [ 4513 ]