La solution se trouve ci-dessous.
Rédigée le 14 juin 2002.
L'indice était plutot clair. Il fallait penser LCD!
Comment écrit-on "8" ?
|---2---|
| |
4 1
| |
|---8---|
| |
64 16
| |
|---32--|
N'est-ce pas limpide maintenant?
Chaque barre est assimilable à un bit.
Le 1er terme de la suite represente 0 car 1 + 2 + 4 + 16 + 32 + 64 = 119.
Le deuxième represente 1 parce que 1 + 16 = 17.
Et ainsi de suite...
Pour des plus grands nombres [1,2,4,...,64] est remplacé par [128,...,16384] etc.
Il est possible de programmer la suite (fonction lcd) grâce à scilab.
nb : resultat final
ndc : nombre de chiffres
u : chiffre actuel de n
M(i,j) : (j-1)è bit de (i-1)
Le code est:
function [nb]=lcd(n);nb=0;M=[1 1 1 0 1 1 1;1 0 0 0 1 0 0;1 1 0 1 0 1 1;1 1 0 1 1 1 0;1 0 1 1 1 0 0;0 1 1 1 1 1 0;0 1 1 1 1 1 1;1 1 0 0 1 0 0;1 1 1 1 1 1 1;1 1 1 1 1 1 0];if n <> 0 then ndc=int(log10(n))+1,else ndc = 1,end;for cx = ndc:-1:1;u=int(n/(10^(cx-1)));n=n-u*(10^(cx-1));for j=0:6;nb=nb+M(u+1,j+1)*2^(j+7*(ndc-cx)),end,end;endfunction
...et lcd(n) calcule la representation lcd de n.
Retour à l'énigme
Retour aux énigmes
Accueil