Visualizza il feed RSS

Titolo provvisorio...

C64 - I numeri dei salmi

Valuta questo inserimento
di pubblicato il 28-01-2019 alle 12:14 (202 Visite)
Ancora retroprogramming entry level, destinato a chi (ri)comincia a programmare sul C64 e desidera confrontarsi con esercizi di programmazione elementari ma non banali, che siano creativi e stimolanti.
Dopo il numero di Sarah (che ovviamente si suppone essere una gran bella figliola, col tipico sciovinismo nerd e geek ) ecco un altro classico problema numerico tratto da "The commodore puzzle book - basic brainteasers" di Lee e Scrimshaw.

Viene proposta e sviluppata una soluzione in BASIC V2 alternativa a quella fornita dal testo, in questo caso incentrata su un notevole miglioramento prestazionale conseguito tramite l'uso accorto di una struttura dati elementare ma massimamente idonea alla rappresentazione dei sottoinsiemi: un semplice array booleano.
Il problema originale è di fatto il primo quesito proposto nel libro. Nella funzione domenicale i pastori protestanti segnano su una lavagnetta i numeri dei salmi da cantare. Gli autori segnalano una peculiare coincidenza, data dai numeri seguenti:
192
384
576
Si notano le seguenti proprietà:
1) Si tratta di numeri di tre cifre.
2) Il secondo numero è pari al doppio del primo.
3) Il terzo numero è pari al triplo del primo.
4) I tre numeri complessivamente usano nove delle dieci cifre decimali disponibili, ciascuna una e una sola volta. Nel caso esemplificato, non viene utilizzato lo zero.
Il quesito chiede semplicemente se esistano altre terne di numeri siffatte, ed eventualmente quali siano.

La soluzione in BASIC V2 proposta dagli autori, pur essendo concettualmente ben impostata nelle sue linee generali, purtroppo non brilla per efficienza: si mostra facilmente come con un approccio più "informatichese", senza modificare la struttura del loop principale e senza tradire lo spirito didattico e didascalico del codice sia possibile decurtare nettamente il tempo di esecuzione, portandolo quasi a metà dell'originale. Ed è esattamente questo che facciamo nell'articolo e col codice allegato, disponibili come d'abitudine anche in PDF e ZIP rispettivamente al link indicato: https://sys64738.org/2019/01/i-numeri-degli-inni/.

aggiornamento da 28-01-2019 a 21:32 di M.A.W. 1968

Categorie
Libri , Programmazione

Commenti