Я изначально неправильно запрограммировал программу. Вместо того, чтобы возвращать числа Фибоначчи между диапазонами (т.е. startNumber 1, endNumber 20 должен = только те числа между 1 и 20), я написал для программы, чтобы отобразить все числа Фибоначчи между диапазонами (то есть. StartNumber 1, endNumber 20 отображает = первые 20 чисел Фибоначчи). Я думал, что у меня был безошибочный код. Я тоже не понимаю, почему это происходит.
startNumber = int(raw_input("Enter the start number here "))
endNumber = int(raw_input("Enter the end number here "))
def fib(n):
if n < 2:
return n
return fib(n-2) + fib(n-1)
print map(fib, range(startNumber, endNumber))
Кто-то указал в моей части II (которая была закрыта за дублирование - https://stackoverflow.com/questions/504193/how-to-write-the-fibonacci-sequence-in-python-part-ii)), что мне нужно передать startNumber и endNumber через генератор, используя цикл while. Может кто-нибудь указать мне направление о том, как это сделать? Любая помощь приветствуется.
Я учусь на программиста и столкнулся с небольшим количеством беспорядка. Меня просят написать программу, которая будет вычислять и отображать последовательность Фибоначчи по введенному пользователем начальному номеру и конечному номеру (т. Е. StartNumber = 20 endNumber = 100, и он будет отображать только числа между этим диапазоном). Хитрость заключается в том, чтобы использовать его включительно (что я не знаю, как это сделать в Python? - я предполагаю, что это означает использовать инклюзивный диапазон?).
То, что я имею до сих пор, это не настоящее кодирование, а:
- Запись формулы последовательности Fib в бесконечное число
- Отображение startNumber to endNumber только из последовательности Fib.
Я понятия не имею, с чего начать, и я прошу идеи или понимание того, как это написать. Я также пытался написать форумную последовательность Фибоначчи, но я тоже заблудился.