Ряд Фибоначчи на Python
Нужно было написать код на Python опираясь на while, что бы он выводил Ряд Фибоначчи! Я попробовал так:
fib1 = 0
fib2 = 0
while fib1 < 100 and fib2 < 100:
fib1 += 1
fib2 += 1
i = fib1 + fib2 - 1
print(i)
На мой взгляд всё правильно, но почему-то не работает:(
Прошу показать ошибку и исправить код.
Ответы (3 шт):
Автор решения: Aziz Umarov
→ Ссылка
Поробуйте так, но это выведет все числа до 100, а не 100 членов последовательности
fib1 = 0
fib2 = 1
while fib1 < 100 and fib2 < 100:
i = fib1 + fib2
fib1 = fib2
fib2 = i
print(i)
Автор решения: Ildar
→ Ссылка
один из нерекурсивных вариантов
fib1 = 0
fib2 = 1
fib3 = 1
print(fib1)
print(fib2)
print(fib3)
while fib3 < 100:
fib1 = fib2
fib2 = fib3
fib3 = fib1 + fib2
print(fib3)
Автор решения: вася
→ Ссылка
Вывод N элементов:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b
for index, fibonacci_number in zip(range(42), fibonacci()):
print('{} - {}'.format(index + 1, fibonacci_number))
Вывод элементов по условию:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b
gen = fibonacci()
next_fibonacci_number = next(gen)
while next_fibonacci_number < 100:
print(next_fibonacci_number)
next_fibonacci_number = next(gen)