Probabilités, fonction Python
Re: Probabilités, fonction Python
bonjour,
il me faut auparavant créer 2 listes ; une pour x et l'autre pour y, afin de connaître l'état successif où se trouve la machine.
pensez-vous qu'il faut faire " x=[0]" et y=[0] en début de programme puis mettre "return x" et "return y" à chaque étape de la boucle du programme ?
Céline
il me faut auparavant créer 2 listes ; une pour x et l'autre pour y, afin de connaître l'état successif où se trouve la machine.
pensez-vous qu'il faut faire " x=[0]" et y=[0] en début de programme puis mettre "return x" et "return y" à chaque étape de la boucle du programme ?
Céline
Re: Probabilités, fonction Python
est-ce correct svp ? :
def moyenne (somme):
return(somme/100)
somme=0
trajetcourant=0
b=trajet()
for i in range (100):
trajetcourant=trajetcourant+b
somme=somme+trajetcourant
print(moyenne(somme/100))
merci, Céline
def moyenne (somme):
return(somme/100)
somme=0
trajetcourant=0
b=trajet()
for i in range (100):
trajetcourant=trajetcourant+b
somme=somme+trajetcourant
print(moyenne(somme/100))
merci, Céline
-
- Messages : 10356
- Enregistré le : lun. 30 août 2010 11:15
Re: Probabilités, fonction Python
Bonjour,
ton return est mal placé : il doit intervenir à la fin puisqu'on renvoie la moyenne à la fin du programme.
De plus, ton instruction b=trajet() doit être à l'intérieur de la boucle for, car la fonction trajet est appelée à chaque tour de boucle.
Je te propose une fonction générique qui calcule la moyenne du nombre de déplacements sur n trajets :
Ensuite, il te restera à l'appeler dans la console
Bonne continuation
ton return est mal placé : il doit intervenir à la fin puisqu'on renvoie la moyenne à la fin du programme.
De plus, ton instruction b=trajet() doit être à l'intérieur de la boucle for, car la fonction trajet est appelée à chaque tour de boucle.
Je te propose une fonction générique qui calcule la moyenne du nombre de déplacements sur n trajets :
Code : Tout sélectionner
def moyenne(n):
somme = 0
trajet_courant = 0
for i in range(n):
trajet_courant = trajet()
somme = somme + trajet_courant
return somme/n
Ensuite, il te restera à l'appeler dans la console
Code : Tout sélectionner
>>> moyenne(100)
10.05
Re: Probabilités, fonction Python
merci, je vais essayer cela. Vous m'aidez vraiment, c'est pour demain ! Pouvez-vous m'indiquer si ce qui est cité ci-dessus est correct ?Céline a écrit : ↑mer. 12 févr. 2020 14:05bonjour,
il me faut auparavant créer 2 listes ; une pour x et l'autre pour y, afin de connaître l'état successif où se trouve la machine.
pensez-vous qu'il faut faire " x=[0]" et y=[0] en début de programme puis mettre "return x" et "return y" à chaque étape de la boucle du programme ?
Céline
merci encore
Re: Probabilités, fonction Python
par ailleurs, c'est bon pour la moyenne !!! :)
-
- Messages : 10356
- Enregistré le : lun. 30 août 2010 11:15
Re: Probabilités, fonction Python
Bonjour,
tu peux créer une liste abscisses et une liste ordonnees.
et tu lui ajoutes la position à chaque fois que celle-ci est modifiée.
Je te fais un exemple avec le renvoi des valeurs :
Bonne continuation
Par exemple, on a un appel :
tu peux créer une liste abscisses et une liste ordonnees.
et tu lui ajoutes la position à chaque fois que celle-ci est modifiée.
Je te fais un exemple avec le renvoi des valeurs :
Code : Tout sélectionner
def trajet_bis():
machine_x = 0
machine_y = 0
nombredeplacements = 0
abscisses=[0]
ordonnees=[0]
while -2<=machine_x<=2 and -2<=machine_y<=2 :
deplacement = random.randint(1,4)
if deplacement == 1:
machine_x = machine_x + 1
abscisses.append(machine_x)
if deplacement == 2:
machine_x = machine_x - 1
abscisses.append(machine_x)
if deplacement == 3:
machine_y = machine_y + 1
ordonnees.append(machine_y)
if deplacement == 4:
machine_y = machine_y - 1
ordonnees.append(machine_y)
nombredeplacements = nombredeplacements + 1
return nombredeplacements, machine_x, machine_y, abscisses, ordonnees
Par exemple, on a un appel :
Code : Tout sélectionner
>>> trajet_bis()
(8, -1, -3, [0, 1, 0, -1], [0, 1, 0, -1, -2, -3])
Re: Probabilités, fonction Python
merci
j'ai testé cependant voici ce qui est affiché :
Traceback (most recent call last):
File "/tmp/sessions/7a04ccf19ae2c398/main.py", line 34, in <module>
print (moyenne(100))
File "/tmp/sessions/7a04ccf19ae2c398/main.py", line 32, in moyenne
somme = somme + trajet_courant
TypeError: unsupported operand type(s) for +: 'int' and 'tuple'
je ne comprends pas car avant les listes, cela marchait ... auriez-vous une petite idée ?
Merci, Céline
j'ai testé cependant voici ce qui est affiché :
Traceback (most recent call last):
File "/tmp/sessions/7a04ccf19ae2c398/main.py", line 34, in <module>
print (moyenne(100))
File "/tmp/sessions/7a04ccf19ae2c398/main.py", line 32, in moyenne
somme = somme + trajet_courant
TypeError: unsupported operand type(s) for +: 'int' and 'tuple'
je ne comprends pas car avant les listes, cela marchait ... auriez-vous une petite idée ?
Merci, Céline
-
- Messages : 10356
- Enregistré le : lun. 30 août 2010 11:15
Re: Probabilités, fonction Python
Bonjour,
cela dépend de ce que tu as mis comme résultat envoyé par ta fonction trajet.
Si ta fonction trajet() renvoie plusieurs valeurs, cela correspond à un tuple en python.
Comme tu veux le nombre de déplacements, qui correspond au premier terme de ce tuple, il faut appeler ce premier terme soit trajet()[0].
Le script se corrige comme suit :
Si tu as encore des problèmes à l'exécution, il faudra que tu me renvoies le script complet.
Bonne continuation
cela dépend de ce que tu as mis comme résultat envoyé par ta fonction trajet.
Si ta fonction trajet() renvoie plusieurs valeurs, cela correspond à un tuple en python.
Comme tu veux le nombre de déplacements, qui correspond au premier terme de ce tuple, il faut appeler ce premier terme soit trajet()[0].
Le script se corrige comme suit :
Code : Tout sélectionner
def moyenne(n):
somme = 0
trajet_courant = 0
for i in range(n):
trajet_courant = trajet()[0]
somme = somme + trajet_courant
return somme/n
Bonne continuation
Re: Probabilités, fonction Python
bonjour, je souhaitais juste vous remercier, vous m'avez beaucoup aidée !
bonne journée !
bonne journée !
-
- Messages : 3488
- Enregistré le : ven. 25 nov. 2016 14:24
Re: Probabilités, fonction Python
Merci pour ton message Céline, même si le forum est fait pour aider, c'est toujours plaisant ce genre de retour.
Bonne continuation
A bientôt sur le forum
SoS-math
Bonne continuation
A bientôt sur le forum
SoS-math