IniziaInizia gratis

Implementare la goffaggine

Con questo codice ben strutturato, cambiare il numero di simulazioni della random walk è molto semplice. Devi semplicemente aggiornare la funzione range() nel ciclo for esterno.

C'è ancora qualcosa che abbiamo dimenticato! Sei un po' goffo e hai lo 0,5% di probabilità di cadere. Questo richiede un'altra generazione di numeri casuali. In pratica, puoi generare un random float compreso tra 0 e 1. Se questo valore è minore di o uguale a 0,005, devi reimpostare il valore del passaggio (step) a 0.

Questo esercizio fa parte del corso

Python - Livello Intermedio

Visualizza il corso

Istruzioni dell'esercizio

  • Modifica la funzione range() in modo che la simulazione venga eseguita 20 volte.
  • Completa la condizione if in modo che step sia impostato a 0 se un random float è minore di o uguale a 0,005. Usa np.random.rand().

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# numpy and matplotlib imported, seed set

# clear the plot so it doesn't get cluttered if you run this many times
plt.clf()

# Simulate random walk 20 times
all_walks = []
for i in range(5) :
    random_walk = [0]
    for x in range(100) :
        step = random_walk[-1]
        dice = np.random.randint(1,7)
        if dice <= 2:
            step = max(0, step - 1)
        elif dice <= 5:
            step = step + 1
        else:
            step = step + np.random.randint(1,7)

        # Implement clumsiness
        if ___ :
            step = 0

        random_walk.append(step)
    all_walks.append(random_walk)

# Create and plot np_aw_t
np_aw_t = np.transpose(np.array(all_walks))
plt.plot(np_aw_t)
plt.show()
Modifica ed esegui il codice