С предложениями, следами и ошибками; я повторил код. Однако у меня все еще есть запрос:
Текущий результат: [1, -1, 2, -3, 5, 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 , 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]
Ожидаемый и точный результат: [5, -3, 2, -1, 1, 0, 1, 1 , 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]
- значение имеет правильную последовательность . каждое значение соответствует значению диапазона.
Однако - значения меняются местами. (-1) позиция имеет 5 & (-5) позиция имеет 1. Как мне ее решить?
Также, если я попробую bi_fibonacci (5,10):
Ответ: [0 , 1, 1, 2, 3, 5] - учитывается длина диапазона. независимо от значений.
Я бы хотел показать: [8, 13, 21, 34, 55] - Фактический ответ.
Как решить?
Заранее спасибо.
def bi_fibonacci(num1, num2):
a = 1
b = -1
for item in range(num1, num2+1):
if item < 0:
yield a
temp = a
a = b
b = temp - b
a = 0
b = 1
for item in range(num1,num2+1):
if item > -1:
yield a
temp = a
a = b
b = temp + b
fibo_seq = [x for x in bi_fibonacci(-8,8)]
print(fibo_seq)
print(len(fibo_seq))