Lycée Masséna (Nice) PCSI 834
TP Python
Variables aléatoires réelles
Le package permettant de générer des nombres aléatoires (en fait, pseudo-aléatoires) est random. On tapera donc un
import random en début de script. Notons que :
–random.random() retourne un flottant aléatoire dans [0,1[.
– si aet bsont deux entiers, random.randint(a,b) retourne un entier aléatoire dans 〚a, b〛.
Exercice 1. (Loi uniforme sur 〚n1, n2〛)
Sans utiliser la fonction randint, écrire une fonction Python (dont l’entête est def equirepartition(n1,n2):) simu-
lant une variable aléatoire suivant la loi uniforme sur 〚n1, n2〛.
Exercice 2. (Loi de Bernoulli de paramètre p)
Ecrire une fonction Python (dont l’entête est def bernoulli(p):) simulant une variable aléatoire suivant la loi de
Bernoulli de paramètre p∈[0,1].
Exercice 3. (Loi binomiale de paramètres net p)
Ecrire une fonction Python (dont l’entête est def binomiale(n,p):) simulant une variable aléatoire suivant la loi
binomiale de paramètres n∈N∗et p∈[0,1].
Exercice 4. Pour un entier N>1et un réel p∈[0,1] donnés, obtenir sous la forme d’une liste Xde longueur Ndes
réalisations Xndes lois binomiales de paramètres net p, pour tout n∈〚1, N〛. Tracer ensuite le nuage de points de
coordonnées n, Xn
npour n∈〚1, N〛.
Tester le script pour N= 100,500,1000,5000,10000. Qu’a-t-on illustré ?
Exercice 5. Soit n∈N∗. On lance nfois une pièce dont la probabilité d’apparition de «pile» est égale à p∈]0,1[. On
désigne par Xla variable aléatoire égale au numéro du lancer au cours duquel apparait «pile» pour la première fois,
ou égale à 0si «pile» n’apparait pas au cours des nlancers. Ecrire un script Python qui simule la variable X.
Exercice 6. Soit (b, r)∈(N∗)2. Une urne contient bboules blanches et rboules rouges. Ecrire un script Python qui
simule ntirages sans remise dans cette urne (n6b+r) et affiche les résultats des tirages et le nombre Xde boules
rouges tirées.
Exercice 7. Soit (n, b)∈(N∗)2. On se donne une urne contenant nboules noires et bboules blanches. On effectue
des tirages sans remise d’une boule dans cette urne jusqu’à ce qu’il n’y ait plus de boule noire. On note Xla variable
aléatoire égale au nombre de tirages effectués. Ecrire une fonction Python qui simule X.
Exercice 8. Soit n∈N∗. On se donne n+1 urnes numérotées de 0àn, contenant chacunes nboules. L’urne kcontient
kboules portant le numéro 1et n−kboules portant le numéro 0. On choisit une urne au hasard et on tire une boule
dans cette urne. On note Xla variable aléatoire égale au numéro de la boule tiré. Ecrire une fonction Python qui simule
X.
Exercice 9. Soit n∈N∗. On se donne une urne contenant nboules numérotées de 1àn. On effectue des tirages
successifs suivant le protocole suivant : si on tire la boule numéro k, on enlève de l’urne toute les boules de numéro
supérieur ou égal à k. On note Xla variable aléatoire correspondant au nombre de tirages nécessaires pour vider l’urne.
Ecrire une fonction Python qui simule X.
Exercice 10. Une urne contient b>1boules blanches et une boule rouge. On y effectue une succession de tirages
d’une boule avec remise jusqu’à ce que l’on sorte la boule rouge. Soit alors Xla variable aléatoire égale au nombre de
tirages effectués (si toutefois cette succession se termine). Ecrire un script Python simulant la variable aléatoire X.
Exercice 11. On effectue une succession de lancers d’un dé bien équilibré à 6faces numérotées de 1à6.
1. On note Xla variable aléatoire égale au rang d’apparition du premier 6. Ecrire un script Python simulant
l’expérience, affichant les résultats successifs des lancers et donnant la valeur de X.
2. On note Yla variable aléatoire égale au rang d’apparition du deuxième 6. Ecrire un script Python simulant
l’expérience, affichant les résultats successifs des lancers et donnant la valeur de Y.
3. On note Zla variable aléatoire égale au rang d’apparition du n-ième 6. Ecrire un script Python simulant l’expé-
rience pour un ndonné, affichant les résultats successifs des lancers et donnant la valeur de Z.
1/2