Bonjour j'aimerais que l'on me guide pour un exercice de probabilité en python voici l'énoncé
Une urne contient cinq bulletins verts et trois bulletins bleus.
Jerome à écrit le script Python d'une fonction tirage
from random import randint
def tirage():
tirage=[]
For i in range(2):
if randint(1,8)<=3:
tirage.append("bleu")
else :
tirage.append("vert")
return(tirage)
1)Que renvoie cette fonction ?
2)Quelle est la probabilité que cette fonction renvoie le couple [ 'bleu','bleu ']?
3)Modifier le script de la fonction tirage pour qu'elle renvoie le nombre de bulletins bleus obtenus lors de deux tirages sans remise dans l'urne.
Bonsoir,
1) As tu remarqué les crochets de la ligne 2 ?
tirage=[]
En conséquence quelle est la nature de l'objet tirage ?
Par curiosité, as tu essayé d'utiliser cette fonction nommée aussi tirage?
Pour la question 1 la réponse est donc une liste
Pour la question 2 j'ai fait un arbre pondéré qui indique qu'au premier tirage la probabilité d'avoir un bulletin bleu est de 3sur8 et au deuxième tirage 2sur7 donc la probabilité de trier deux bulletins bleus est de 3sur8 × 2sur7 = 3sur28 Pour la 3ème question je n'ai pas compris
La fonction tirage() simule un tirage avec remise dans l'urne.
Ta réponse à la question 2/ n'est donc pas la bonne.
Pour la question 1 j'ai dit que c'est une liste qui contenait deux éléments et que seul "bleu" et "vert" peuvent faire office d'éléments
Pour la question 2 j'avais oublié la remise dans l'urne c'est donc 3sur8 × 3sur8 = 9sur64
Pour la question 3 je ne sais pas quoi modifier
Pour la question 2 qu'est-ce qui indique une remise dans l'urne et pour la question 3 je ne sais pas quoi faire
Voici un essai. Est-ce valable ?
from random import randint
def tirage():
nbr_bleu =
#ler tirage
if randint (1, 8) <=3:
nbr_bleu = nbr_bleu + 1
#2ème tirage: il reste 2 bulletins bleus sur
7 bulleins
if randint (1,7)<=2:
nbr_bleu = nbr_bleu + 1
else:
#2ème tirage il reste 3 bulletins bleus sur 7 bulleins
if randint (1,7)<=3:
nbr_bleu= nbr_bleu + 1
return(nbr_bleu)
Pas mal a priori
mais
* sans les indentations, difficile de savoir si c'est correct.
* sans la valeur 0 pour initialiser nbr_bleu, la fonction "plante"
As tu fait un jeu d'essais pour t'assurer que ta fonction n'oublie aucun cas ?
salut
je ne comprends pas comment on choisit de faire le if ou le else dans le programme de 17h13 ...
ou encore pour le deuxième tirage on ne sait pas si on a eu un bleu ou un vert ...
from random import randint
def tirage() :
bleu = 0
#1er tirage
if randint (1, 8) <= 3 :
bleu = bleu + 1
#2ème tirage: il reste 7 bulletins et 3 - bleus bulletins bleu
if randint (1,7) <= 3 - bleus :
bleu = bleu + 1
return bleu
@ Carpediem
Est-ce que le programme fait par ExpertJuge01, si on fait les bonnes indentations, fonctionne correctement ?
Sous la forme suivante, il semblerait que oui même s'il est un peu plus alambiqué que le tien... Qu'en penses-tu ?
from random import randint
def tirage():
nbr_bleu=0
if randint (1, 8) <=3:
nbr_bleu = nbr_bleu + 1
if randint (1,7)<=2:
nbr_bleu = nbr_bleu + 1
else:
if randint (1,7)<=3:
nbr_bleu= nbr_bleu + 1
return(nbr_bleu)
ha oui comme ça ça devrait marcher ...
je dois avouer que j'ai eu beaucoup de mal à lire le code de 17h13 de ExpertJuge01 ... donc effectivement mauvaise interprétation de l'indentation ...
j'invite de plus ExpertJuge01 à rendre son code plutôt que le mien (qu'il peut cependant garder sous la main bien sûr)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :