Donat un nombre N de passos i una probabilitat px d’avançar (i per tant, de 1−px de recular) en l’eix de y, i una probabilitat py d’anar a l’esquerra (i per tant, de 1−py d’anar a la dreta) en l’eix de x, simuleu (amb la funció rand) N passos amb probabilitats px,py. Les probabilitats són reals entre 0 i 1
El programa ha de dir a cada pas a quina distància a devant del punt de partida (nombre positiu) o a quina distància a darrere del punt de partida (nombre negatiu) ens hem quedat en totes dues direccions. Imagineu-vos que teniu els eixos de les x’s i les y’s, i després de tirar dos daus, us diu si heu d’anar esquerra o dreta (eix x) i endevant o enrera (eix y).
Cada punt ha de tenir dues coordenades separades per coma i entre parèntesi, i els punts han d’anar separades per espais.
Per exemple, assumint que al principi ens trobem en el punt (0,0), si tenim que N = 2 amb una probabilitat d’avançar del 50% i d’anar a l’esquerra del 50% llavors tindrem, per exemple, que el càlcul de la primera probabilitat de bellugar-nos en tots dos eixos ens diu que hem d’avançar i anar a la dreta, llavors el primer punt serà:
(1,1) |
(Això és simplement una suposició, perquè els valors dependran de la funció rand). En tot cas, si el segon càlcul de les probabilitats ens diu que cal recular i anar a l’esquerra, llavors ens trobarem una altra vegada al punt d’inici:
(0,0) |
Per tant, el que hauria de treure el programa per pantalla seria:
(1,1) (0,0) |
Entrada
Una llavors (enter), un nombre de passos (enter positiu) i dues probabilitats (reals entre 0 i 1).
Sortida
La seqüència de corrdenades, a cada pas, del punt de partida.
Input
4 5 0.50 0.50
Output
(1,1) (0,0) (-1,-1) (0,0) (1,1)