Dessinez un programme ou une fonction qui écrira en STDOUT
n
temps (chacun pour une étape) une chaîne qui contient un point .
à l'emplacement du déambulateur. Le programme doit également écrire une ligne toutes les s
secondes (ou attendre s
quelques secondes après chaque ligne).
Une marche aléatoire est une formalisation mathématique d'un chemin qui consiste en une succession d'étapes aléatoires ( wiki ), de sorte que chaque nouvelle étape sera la dernière étape plus une nouvelle valeur, donc toute t
valeur d'étape n'est que la somme de toutes les valeurs aléatoires avant ir plus la valeur initiale.
Le programme devrait prendre 2 entrées et n'utilisera que des espaces " "
et des points "."
sur la sortie. La valeur de départ du déambulateur sera 20
telle que la sortie devrait être un point après 19 espaces.
. #19 spaces then a dot
À chaque nouvelle étape, la valeur sera la dernière valeur du déambulateur plus une de ces valeurs[-2-1,0,1,2]
(20% de chance chacune). Une fois la nouvelle position imprimée, le programme doit attendre s
quelques secondes et passer à l'étape suivante. Si le pas met le déambulateur hors de portée, 1 to 40
il doit être ignoré et la position du déambulateur reste la même. Le nombre d'espaces sera toujours un nombre compris entre 0 et 39.
Exemple
#input
Mywalk(s = 0.1, n = 30)
#output
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Considérations
Vous pouvez prendre l'entrée dans n'importe quel format raisonnable
Le code le plus court gagne
Ce n'est pas grave si votre programme n'accepte que les secondes sous forme d'entiers
1 to 40
, car le nombre d'espaces est toujours position-1
.
n
c'est le nombre d'étapes?