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

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

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

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

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

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

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

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

2510 = 1000101 fib = 110101 fib.

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: