On veut tirer au hasard 0 ou 1 (par exemple 0=pile et 1=face).
On utilise la fonction rand(n) qui renvoie un entier aléatoire
uniformément distribué dans 0.. n-1.
On tape :
tirage_piece():=rand(2);
On veut tirer au hasard un nombre entier dans [1.. 6].
On utilise la fonction rand(n) qui renvoie un entier aléatoire
uniformément distribué dans 0.. n-1.
On tape :
tirage_de():=1+rand(6);
On tire au hasard un nombre entier n de [0,1,2,3].
On tire au hasard un nombre réel m de [0,1[.
On veut simuler une variable aléatoire X qui vaut
la partie entière de m*n.
On utilise la fonction rand(p,n) qui renvoie un réel aléatoire
uniformément distribué dans [p.. n[.
On tape :
X():={ local n; n:=rand(4); return floor(n*rand(0,1)); }
Quelle est la fonction de répartition de X ?
X vaut :
0 si ((n=0 ou n=1) et m ∈ [0,1[) ou (n=2 et m ∈ [0,0.5[) ou
(n=3 et m ∈ [0,1/3[)
1 si (n=2 et m ∈ [0.5,1[) ou (n=3 et m ∈ [1/3,2/3[)
2 si n=3 et m ∈ [2/3,1[
On a donc :
Proba(X=0)=1/4+1/4+1/4*1/2+1/4*1/3=17/24
Proba(X=1)=1/4*1/2+1/4*1/3=5/24
Proba(X=2)=1/4*1/3=1/12
On vérifie que l’on a : 17/24+5/24+1/12=1
On tire au hasard un nombre entier n de [1,2,3].
On veut simuler une variable aléatoire Y qui vaut ∑j=1nj.
On tape :
Y():={ local n,j,x; n:=1+rand(3); x:=0; pour j de 1 jusque n faire x:=x+j; fpour; return x; }:;
Quelle est la fonction de répartition de Y ?
Y vaut :
1 si n=1
3 si n=2
6 si n=3
On a donc :
Proba(X=1))=1/3
Proba(X=3))=1/3
Proba(X=6))=1/3
On aurait pu aussi simuler cette loi en tapant :
Z():={ local n; n:=rand(3); si n==0 alors return 1 fsi; return 3*n; }:;