Divinazione binaria

Da testwiki.
Versione del 3 ott 2024 alle 15:56 di imported>Horcrux (Collegamenti esterni: rimuovo sezione vuota)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca

Template:NN Template:F

La divinazione binaria è un gioco matematico automatico per indovinare un numero, tramite alcune domande prefissate che si basano sul sistema binario.

Funzionamento

Scelto un numero all'interno di un intervallo, ogni domanda è nascostamente volta ad individuare una cifra della sua scrittura in base 2. Le domande sono poste in modo implicito e chiedono semplicemente se il numero appartiene ad un dato insieme.

La successione di risposte "sì" e "no" per le domande fornisce quindi la scrittura binaria in "1" e "0" per il numero da indovinare. Senza bisogno di conoscere la scrittura in base 2, il numero può essere ottenuto attribuendo ad ogni domanda un "valore" doppio della precedente: la prima domanda vale 1, la seconda 2, la terza 4, la quarta 8, e così via. Sommando le domande a cui è stata data una risposta positiva si trova il numero da indovinare.

Più precisamente, la prima domanda chiede se il numero sia pari o dispari, ovvero se la sua scrittura binaria finisca con 0 o con 1. La seconda domanda chiede se il numero è del tipo 4k o 4k+1 oppure del tipo 4k+2 o 4k+2+1, quindi se la sua penultima cifra, sempre in base due, sia 0 o 1. Ogni domanda successiva scopre una nuova cifra. Con n domande è quindi possibile scoprire un qualunque numero scelto a caso nell'intervallo tra 0 e 2n1 (la cui scrittura in base binaria è 11...11, con la cifra 1 ripetuta n volte). Viceversa, per indovinare un numero tra 0 e N servono almeno log2(N+1) domande.

Esempio di gioco

Per indovinare un numero compreso tra 0 e 15 bastano quattro domande che, secondo questo metodo, chiedono se il numero sia compreso o meno nei seguenti insiemi:

prima domanda (valore 1) 1 3 5 7 9 11 13 15
seconda domanda (valore 2) 2 3 6 7 10 11 14 15
terza domanda (valore 4) 4 5 6 7 12 13 14 15
quarta domanda (valore 8) 8 9 10 11 12 13 14 15

Con il numero 11, per esempio, le risposte nell'ordine saranno: sì, sì, no, sì. Sommando dunque i valori corrispondenti ad ogni domanda si ottiene esattamente 1+2+8 = 11.

Varianti

Applicando una permutazione ai numeri dell'intervallo, è possibile assegnare ad ogni numero un diverso "codice" di zeri e uni, ovvero di risposte affermative e negative. In questo modo si possono ottenere tutti i sistemi che permettono di indovinare il numero utilizzando un numero minimo di domande prefissate: tramite ogni domanda è infatti possibile escludere (circa) metà dei numeri e ridurre di (circa) metà l'insieme in cui si trova il numero da indovinare.

Template:Citazione necessaria

Template:Portale