Implemente a falta de coordenação

Com esse código bem escrito, é muito fácil alterar o número de vezes que o caminho aleatório deve ser simulado. Você simplesmente atualiza a função range() no loop de nível superior for.

Ainda nos esquecemos de algo! Você é um pouco desajeitado e tem 0,5% de chance de cair. Isso exige outra geração de números aleatórios. Basicamente, você pode gerar um float aleatório entre 0 e 1. Se esse valor for menor ou igual a 0,005, você deverá redefinir o valor de step como 0.

Este exercício faz parte do curso

Python intermediário

Ver Curso

Instruções de exercício

  • Altere a função range() para que a simulação seja realizada 20 vezes.
  • Finalize a condição if para que step seja definido como 0 se um float aleatório for menor ou igual a 0,005. Use np.random.rand().

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# 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()