• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Помогите решить задачу python. Задача 3. Ряд Фибоначчи

21.10.2021
30
0

Задача 3. Ряд Фибоначчи​

Что нужно сделать

Числа Фибоначчи — это ряд чисел, в котором каждое следующее число равно сумме двух предыдущих: 1, 1, 2, 3, 5, 8, 13…

Пользователь вводит num_pos. Напишите функцию, которая выводит число, стоящее на позиции num_pos в ряде Фибоначчи.



Пример 1:

Введите позицию числа в ряде Фибоначчи: 6

Число: 8



Пример 2:

Введите позицию числа в ряде Фибоначчи: 10

Число: 55
 
Python:
fibo1 = fibo2 = 1

num_pos = int(input("Введите число: "))
for i in range(2, num_pos):
    fibo1, fibo2 = fibo2, fibo1 + fibo2
print("Число " + str(fibo2))

Не рекомендую искать решения таким образом, потому что ничему не научитесь. Если встряли, то по крайней мере прилагайте свой нерабочий код, который можно поправить.
 
Python:
fibo1 = fibo2 = 1

num_pos = int(input("Введите число: "))
for i in range(2, num_pos):
    fibo1, fibo2 = fibo2, fibo1 + fibo2
print("Число " + str(fibo2))

Не рекомендую искать решения таким образом, потому что ничему не научитесь. Если встряли, то по крайней мере прилагайте свой нерабочий код, который можно поправить.
хорошо понял. но вы не правильно сделали. надо было сделать вариант с рекурсией
 
Я совершенно правильно написал, а про рекурсию в вашем вопросе ничего не написано. Хотите максимально точный ответ, пишите максимально точное описание проблемы. Вот рекурсия.

Python:
def fibo(n):
    if n in (1, 2):
        return 1
    return fibo(n - 1) + fibo(n - 2)


print(fibo(int(input("Введите число: "))))
 
Я совершенно правильно написал, а про рекурсию в вашем вопросе ничего не написано. Хотите максимально точный ответ, пишите максимально точное описание проблемы. Вот рекурсия.

Python:
def fibo(n):
    if n in (1, 2):
        return 1
    return fibo(n - 1) + fibo(n - 2)


print(fibo(int(input("Введите число: "))))
хорошо спасибо за ответ.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab