risorse | casio fx-180p | pensa un numero
In questo gioco la calcolatrice cerca di indovinare il numero pensato dall'utente. L'utente risponde troppo alto/troppo basso alle proposte che di volta in volta la calcolatrice elabora. Il numero segreto può essere scelto a piacere nell'intervallo [0, 1023].
Se l'utente non bara, la calcolatrice riesce sempre a scoprire il numero segreto effettuando al più 10 tentativi.
Il gioco è realizzato mediante due programmi: il programma P2 inizializza il gioco ed effettua la prima giocata; il programma P1 elabora il prossimo numero da proporre sulla base della risposta dell'utente al turno precedente.
L'utente deve rispondere con -1 se il numero segreto è inferiore a quello proposto dalla calcolatrice, 1 in caso contrario.
L'utente sceglie 384 come numero segreto.
L'utente risponde -1 per segnalare che il numero segreto è inferiore a quello proposto (512):
1 +/- P1 → 256
L'utente risponde 1 per segnalare che il numero segreto è superiore a quello proposto (256):
1 P1 → 384
La calcolatrice ha già indovinato; per verificare il numero di tentativi effettuati è sufficiente ispezionare il contenuto della memoria K1:
Kout 3 → 3
La calcolatrice ha dunque effettuato 3 tentativi prima di scoprire il numero segreto.
Inizializza il gioco.
passo | tasto | note |
---|---|---|
1 | 1 | inizializza il contatore di tentativi effettuati |
2 | Kin 1 | |
3 | 5 | effettua il primo tentativo (512) |
4 | 1 | |
5 | 2 | |
6 | Kin 2 |
Determina il valore del prossimo numero da proporre.
passo | tasto | note |
---|---|---|
7 | × | |
8 | ( | incrementa il contatore di tentativi |
9 | Kout 1 | |
10 | + | |
11 | 1 | |
12 | ) | |
13 | Kin 1 | |
14 | ÷ | |
15 | Kout 1 | |
16 | = | |
17 | × | biseziona l'intervallo corrente, |
18 | 2 | giocando il numero centrale |
19 | xy | del semi-intervallo inferiore se l'utente ha risposto -1, |
20 | ( | quello superiore se l'utente ha risposto +1 |
21 | 1 | |
22 | 0 | trattandosi di una ricerca sul campo [0, 1023], |
23 | - | si effettua una bisezione binaria, secondo lo schema: |
24 | Kout 1 | |
25 | ) | tn+1 = tn + r × 210-n |
26 | = | |
27 | + | ove tn indica l'n-esimo tentativo, r la risposta dell'utente |
28 | Kout 2 | |
29 | = | |
30 | Kin 2 |
Pagina modificata l'8/11/2011