Imparare #python 2: tirare i dadi

Salve a tutti, anche se sono stato parecchio silenzioso sto continuando nei ritagli di tempo a migliorare la mia comprensione di Python.

Sto proseguendo la lettura del libro “python for kids” ed effettivamente è una lettura intrigante, anche se no sono sicuro di quanti bambini avrebbero la pazienza di andare avanti negli esperimenti.

Oggi sono finalmente giunto ad una parte del libro (Capitolo 10) dove si parla delle funzioni integrate in Python e una di queste è ovviamente in linea con il mio intento ludico espresso nell’altro articolo: Il generatore di numeri casuali, cioè Random.

 Ecco il codice

 

Prossimo passo

Avendo un generatore di numeri casuali posso cominciare a pianificare i prossimi step per i mini giochi.

Nel caso del pytokio l’aggregazione dei tiri di dado dovrà essere differente, perchè nel tokio i numeri non si sommano, ma si accoppiano dando maggior importanza al numero più elevato della coppia.

quindi :

  • 1 e 2 = si legge 21 e non 12
  • 2 e 5 = si legge 52 e non 25

Possibile sequenza:

  • tiro il dado a
  • tiro il dado b
  • metto entrambi i risultati in una stringa
  • faccio un ordinamento (sort)
  • memorizzo la stringa nella lista

Alla prossima!

ps: la prossima settimana sarò relatore al festival del webmarketing!

Update!

Il buon Alessandro Martin, autore di Ubersuggest ha in qualche modo captato questi miei sproloqui e nei commenti mi ha già indicato il modo per generare le sequenze di Tokio.

Ecco il codice aggiornato che contiene le modifiche!

 

3 thoughts on “Imparare #python 2: tirare i dadi

  1. Occhio che alla riga 22 e alla riga 30 fa un paio di conversioni da intero a stringa che non servono. Se costruisci una stringa di interi, poi puoi continuare a lavorare con gli interi.

    Un consiglio. Crea una funzione che traduca il risultato dei dadi nel formato di Tokio.
    Qui invece devi convertire da intero a stringa perché le cifre vanno accoppiate.


    def to_tokio(a,b):
    x = int(str(a)+str(b))
    y = int(str(b)+str(a))
    return max((x,y))

    1. Spettacolo! ho modificato il codice per incorporare questi suggerimenti, ora pubblico una versione aggiornata

  2. Se costruisci una stringa di interi, poi puoi continuare a lavorare con gli interi.

    Intendevo lista di interi, non stringa ovviamente.

Comments are closed.