Номер числа Фибоначчи Последовательность Фибоначчи определяется так
= 0, ф= 1, = ф-1+ф-12
Дано натуральное число А. Определите, каким по счету числом фибоначчи оно является,
то есть выведите такое число , что A. Если А не является числом Фибоначчи.
Введите число -1 1
Входные данные:
Вводите натуральное число А, не превышающее 2*10**9(в девятой степени).
Выходные данные
Выведите ответ на задачу,
Примеры
Ввод:6
Вывод:8
Ввод:10
Вывод:-1
Решите на питоне) задача по теме «цикл while” так что сложного не пишите )

Танюшка364 Танюшка364    3   25.08.2020 10:12    13

Ответы
vasad2005 vasad2005  15.10.2020 16:14

Классическая последовательность Фибоначчи выглядет как 1, 1, 2, 3, 5, 8,  13, 21, 34, 55,...

Ввод: 8 должен давать Вывод: 6.

Код:

def check_fib(a: int) -> int:

   if a == 1:

       return 1

   count = 2

   f1, f2, f3 = 0, 1, 1

   while f3 < a:

       f1 = f2

       f2 = f3

       f3 = f1 + f3

       count += 1

   if f3 != a:

       return -1

   return count

print(check_fib(6))

print(check_fib(8))

print(check_fib(10))


Номер числа Фибоначчи Последовательность Фибоначчи определяется так = 0, ф= 1, = ф-1+ф-12 Дано натур
Номер числа Фибоначчи Последовательность Фибоначчи определяется так = 0, ф= 1, = ф-1+ф-12 Дано натур
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика