Алгоритм перевода целых чисел из фибоначчиевой системы счисления в десятичную

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

2. Сложим все числа, стоящие над единицами. Полученное число будет десятичным эквивалентом фибоначчиева числа.

 

Пример 2.Решим обратную задачу. Запишем в фибоначчиевой системе счисления десятичные числа 1010, 2510 и 10010.

Для решения нашей задачи достаточно подобрать такие числа Фибоначчи, сумма которых равна исходному десятичному числу. Например, число 10 можно представить суммой следующих чисел Фибоначчи: 1010 = 5 + 3 + 2. Это позволяет записать нам 1010 в виде 1110 (выполнили разложение по базису).

Однако это же число 1010 можно записать в фибоначчиевой системе счисления и по-другому:

1010 = 10010fib = 1*8 + 0*5 + 0*3 + 1*2 + 0*1.

Аналогично, число 2510 можно также записать несколькими способами:

2510 = 1000101fib = 110101fib.

Число 10010 можно записать как минимум шестью способами:

10010 = 1000010011fib = 1000010100fib = 110010011fib = 110010100fib = 101110011fib = 101110100fib.