Я предоставлю вам несколько методов для печати последовательности Фибоначчи до заданного числа в Python. Вот три распространенных подхода:
Метод 1: использование цикла
def fibonacci_loop(n):
sequence = [0, 1]
while sequence[-1] < n:
sequence.append(sequence[-1] + sequence[-2])
return sequence[:-1]
number = int(input("Enter a number: "))
fib_sequence = fibonacci_loop(number)
print(fib_sequence)
Метод 2: использование рекурсии
def fibonacci_recursive(n):
if n <= 1:
return [0]
elif n == 2:
return [0, 1]
else:
sequence = fibonacci_recursive(n - 1)
sequence.append(sequence[-1] + sequence[-2])
return sequence
number = int(input("Enter a number: "))
fib_sequence = fibonacci_recursive(number)
print(fib_sequence)
Метод 3: использование динамического программирования (мемоизация)
def fibonacci_dynamic(n, memo={}):
if n <= 1:
return [0]
elif n == 2:
return [0, 1]
elif n in memo:
return memo[n]
else:
sequence = fibonacci_dynamic(n - 1, memo)
sequence.append(sequence[-1] + sequence[-2])
memo[n] = sequence
return sequence
number = int(input("Enter a number: "))
fib_sequence = fibonacci_dynamic(number)
print(fib_sequence)