Некорректно выводит результат вычисления n-го ряда Фибоначчи

Рейтинг: -1Ответов: 1Опубликовано: 26.03.2023
number1 = 1
number2 = 1
 
n = int(input("Номер элемента: "))
 
i = 0

while i < n - 2:
    summa = number1 + number2
    number2 = number2
    number2 = summa
    i = i + 1
 
print("Значение элемента:", number2)

Не понимаю в чём проблема, писал функцию нахождения, но результат неправильный.

Например, ввожу: 55 Выводит: 54, а должно: 139583862445

Ответы

▲ 2Принят

Вы вместо number1 поставили number2

Вот ваш код который исправлен:

number1 = 1
number2 = 1
 
n = int(input("Номер элемента: "))
 
i = 0

while i < n - 2:
    summa = number1 + number2
    number1 = number2
    number2 = summa
    i = i + 1
 
print("Значение элемента:", number2)