Outil pour coder/décoder des nombres via le codage de Fibonacci (mots binaires ne comportant jamais deux valeurs 1 consécutives)
Codage de Fibonacci - dCode
Catégorie(s) : Compression, Mathématiques
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
Le code de Fibonacci utilise le théorème de Zeckendorf (et la représentation de Zeckendorf d'un nombre) qui stipule que tout nombre entier peut s'écrire comme la somme de nombres de Fibonacci non consécutifs.
$$ n = \sum_{i=1}^{k} \beta_i F_{i} $$
Le codage de Fibonnacci consiste a noter les coefficients $ \beta_i $ (valant 0 ou 1) pour en faire un nombre binaire.
Exemple : $ 123 $ est la somme de $ F_{11} = 89 $ et $ F_{9} = 34 $ soit 1010000000 en binaire (les deux 1 sont en position 8 et 10 en partant de la droite).
Comme la représentation de Zeckendorf ne possède jamais 2 nombres de Fibonnacci consécutifs, la valeur binaire n'aura jamais 2 fois le chiffre 1 consécutivement.
Chaque 1 du mot binaire correspond à un nombre de Fibonacci, pour retrouver le nombre décimal, ajouter tous les nombres de Fibonacci correspondant aux 1 du mot binaire.
Exemple : 10100 correspond à $ 1 \times F_5 + 0 \times F_4 + 0 \times F_3 + 1 \times F_2 + 0 \times F_1 = F_5 + F_3 = 8 + 3 = 11 $
Une variante du théorème de Zeckendorf indique qu'il est aussi possible d'écrire tout nombre entier comme la somme de nombres de Néga-Fibonacci (Généralisation de Fibonnacci aux indices négatifs) non consécutifs, ce codage est nommé codage de NegaFibonacci.
dCode se réserve la propriété du code source pour "Codage de Fibonacci". Sauf code licence open source explicite (indiqué Creative Commons / gratuit), l'algorithme pour "Codage de Fibonacci", l'applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou les fonctions liées à "Codage de Fibonacci" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou les données, en téléchargement, script, ou les accès API à "Codage de Fibonacci" ne sont pas publics, idem pour un usage hors ligne, PC, mobile, tablette, appli iPhone ou Android !
Rappel : dCode est gratuit.
Le copier-coller de la page "Codage de Fibonacci" ou de ses résultats est autorisée (même pour un usage commercial) tant que vous créditez dCode !
L'exportation des résultats sous forme de fichier .csv ou .txt est gratuite en cliquant sur l'icone export
Citer comme source bibliographique :
Codage de Fibonacci sur dCode.fr [site web en ligne], consulté le 21/12/2024,