Номер числа Фибоначчи Последовательность Фибоначчи определяется так = 0, ф= 1, =...

+590 голосов
6.2m просмотров

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


Информатика (12 баллов) | 6.2m просмотров
Дан 1 ответ
+77 голосов

Классическая последовательность Фибоначчи выглядет как 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))

(7.0k баллов)