dissabte, 23 de juliol de 2005

El problema de la setmana - successió binària

Aquesta setmana es tracta de trobar què representa una sèrie binària. És una sèrie que escrita en numeració decimal seria molt fàcil de trobar, però en binària potser costa una mica més.

No sé si el problema és senzill o difícil. Jo me'l vaig trobar en un lloc on vaig veure la solució abans de veure la sèrie, així que no sé si es veurà ràpidament o no. En tot cas, poso uns quants termes de la sèrie i si veig que ningú troba la solució, posaré més termes o donaré alguna pista.

0110001100000011001000001100000000011100100000
011001000000001110001000000011000000

(el canvi de línia està posat aleatòriament, només perquè es vegi tota la sèrie. En principi, no separa cap terme del següent ni hi ha cap més raó de la d'estar cap al mig de la sèrie)

Ajut 1: (24-07-05)

Parlant amb una persona del problema, m'he adonat que el problema era realment difícil. Així que donaré una petita ajuda. Com ja suposo que es veu, els números estan en notació binària, i com molt bé se'm va dir, és possible que hi hagi problemes per saber passar de binari a decimal. En aquest cas, i també com a pista, només cal passar nombres naturals de binari a decimal, cosa que simplifica una mica l'explicació. Per exemple, se'n pot trobar una a la pàgina de wikipedia.

Bé, i ara l'ajut: cada terme de la successió està format per dos parts: una primera part que indica quantes xifres (en binari) té el número que es representa i una segona part, que és el número pròpiament dit.


Setmana anterior

Setmana següent

8 comentaris:

escaquejant ha dit...

Hola,
entenc que la primera part té una longitud fixa. Faig bé?

Per altra banda, podem pressuposar que l'extracte de la sèrie que ens dónes comença amb una d'aquestes primeres parts, o pots haver truncat números també de l'esquerra sense pietat?

matgala ha dit...

No, la primera part no té longitud fixa. Indica quantes xifres té el número, però per fer-ho no cal que la longitud sigui fixa, perquè sinó estaria en el mateix cas que a l'hora d'escriure el número: a vegades sobrarien bits i a vegades no n'hi haurien prou.

I sí, la sèrie comença amb una d'aquestes primeres parts. Tan dolenta no sóc...

escaquejant ha dit...

Sé que l'enunciat és l'enunciat i que no s'hauria de discutir, i no és per fer la punyeta, però...
Tal com ho veig, el codi binari té raó de ser només perquè les màquines l'entenguin, i una màquina, aquest codi, no el sabria llegir mai. Normalment, si hi ha un valor que determina la longitud de les dades a llegir és perquè la longitud d'aquest primer valor és fixa. Sinó, com sap la màquina, pobreta, quan acaba la definició de la longitud i quan comença el camp?

Bé. Ben mirat, potser sí que és per fer la punyeta...

matgala ha dit...

Aquí està la gràcia del codi... que la longitud no és fixa, però és fàcil per la màquina de decidir quantes xifres té...

matgala ha dit...

Ajut 2:

Em sembla que aquest ajut serà definitiu... o potser no. Si afegís un terme més a la successió, hauria de posar, a darrere del que ja he posat, la següent seqüència d'1s i 0s:

000000011010001

Si no hi ha resposta, demà hi poso un altre terme...

escaquejant ha dit...

Mmmmmh...
És difícil, aquest...
Si no vaig errat, el següent element és el 000000011100100. No explico més per si algú altre s'anima a resoldre'l.

Per cert, rectifico allò de que una màquina no ho entendria. Em quedo només amb el comentari de que els de Sistemes saltarien a la jugular de l'analista que hagués dissenyat aquesta codificació tan ineficient. I jo també!

matgala ha dit...

Exacte, el següent terme és el 000000011100100. Ja sabia jo que posant que tenia dues parts i posant un terme al final sortiria...

matgala ha dit...

Bé, ja he posat el punt a l'escaquejant. Però deixo el problema aquí obert, per si algú el vol resoldre.