Tirage équiréparti rand alea hasard

### 8.3.2 Tirage équiréparti rand alea hasard

#### Tirage équiréparti sur [0,1[ : rand() randnorm() alea() hasard

rand() renvoie au hasard, de façon équiprobable, un nombre réel de [0,1[.
On tape :

rand()

ou on tape

random()

ou on tape

alea()

ou on tape (attention hasard n’utilise pas de () et est utilisé pour le langage de la tortue)

hasard

On obtient par exemple:

0.912569261115

Pour avoir, au hasard, de façon équiprobable, un nombre de [0;1[, on peut aussi utiliser (voir le paragraphe suivant):

rand(0,1)

On obtient :

0.391549611697

#### Tirage aléatoire équiréparti sur l’intervalle [a;b[ : rand(a,b) random(a,b) hasard(a,b) rand(a..b)() hasard(a..b)()

Si a et b sont des réels rand(a,b) désigne un nombre décimal aléatoire compris dans l’intervalle [a;b[.
Donc, rand(a,b) ou (hasard(a,b)) renvoie au hasard, et de façon équiprobable, un nombre décimal de [a;b[.
Pour avoir, au hasard et de façon équiprobable, un nombre décimal de [0;1[, on tape :

rand(0,1)

Ou on tape :

random(0,1)

Ou on tape :

alea(0,1)

On obtient :

0.391549611697

Ou on tape (attention hasard utilise des () qui englobent hasard et ses paramètres et hasard est utilisé pour le langage de la tortue)

(hasard 0,1)

On obtient par exemple:

0.912569261115

Pour avoir, au hasard et de façon équiprobable, un nombre décimal de [0;0.5[, on tape :

rand(0,0.5)

Ou on tape :

random(0,0.5)

Ou on tape :

alea(0,0.5)

On obtient :

0.303484437987

Pour avoir, au hasard et de façon équiprobable, un nombre décimal de ]−0.5;0], pn tape :

rand(0,-0.5)

ou on tape :

rand(-0.5,0)

ou on tape :

random(0,-0.5)

ou on tape :

alea(0,-0.5)

On obtient par exemple :

-0.20047219703

Si a et b sont des réels rand(a..b) ou alea(a..b) ou hasard(a..b) désigne une fonction qui est un générateur de nombres aléatoires compris dans l’intervalle [a;b[.
Donc, rand(a..b)() renvoie au hasard, et de façon équiprobable, un nombre décimal de [a;b[.
Pour avoir, au hasard et de façon équiprobable, un nombre décimal de [0;1[, on tape :

rand(0..1)()

Ou on tape :

random(0..1)()

Ou on tape :

alea(0..1)()

On obtient :

0.391549611697

Pour avoir, au hasard et de façon équiprobable, plusieurs nombres aléatoires décimaux compris dans l’intervalle [1;2[, on tape :

r:=rand(1..2)

Ou on tape :

r:=random(1..2)

Ou on tape :

r:=alea(1..2)

puis il suffit de taper r().
On tape :

r()

On obtient :

1.14160255529

#### Tirage aléatoire d’entiers équirépartis sur [0,..,n[ : rand(n) alea(n) hasard(n)

Si n est un entier relatif rand(n) ou hasard(n) renvoie au hasard, et de façon équiprobable, un entier de [0,1,..,n[ (ou de ]n,..1,0] si n est negatif).
On tape :

rand(2)

Ou on tape :

random(2)

Ou on tape :

alea(2)

Ou on tape :

hasard(2)

ou

hasard 2

On obtient :

1

ou on obtient :

0

On tape :

rand(-2)

Ou on tape :

random(-2)

Ou on tape :

hasard(-2)

On obtient :

-1

ou on obtient :

0

On tape pour avoir un entier aléatoire entre 6 et 10, bornes comprises :

6+rand(11-6)

Ou on tape :

6+hasard(11-6)

On obtient par exemple :

8

Ou bien on utilise randint :
randint(6,10) ou randint(10,6) renvoie un entier aléatoire entre 6 et 10, bornes comprises (cf ci-dessous).

#### Tirage aléatoire d’entiers équirépartis sur [n1,..,n2] : randint(n1,n2)

Si n1 et n2 sont deux entiers relatifs randint(n1,n2) renvoie au hasard, et de façon équiprobable, un entier relatif de [n1,n2] (ou de [n2,n1] si n2<n1).
On tape :

randint(2,8)

Ou on tape :

randint(8,2)

On obtient par exemple :

4

On tape :

randint(-8,2)

Ou on tape :

randint(-8,2)

On obtient par exemple :

-1

#### Tirage aléatoire sans remise de p objets parmi n : rand alea hasard

rand a dans ce cas, soit 2, soit 3 arguments.
Si rand a 2 arguments : les arguments sont un entier p et une liste L alors rand(p,L) renvoie au hasard, p éléments de la liste L.
Si rand a 3 arguments : les arguments sont trois entiers p,min,max alors rand(p,min,max) renvoie, au hasard, p entiers de [min,..,max]
Alors que sample n’a que 2 arguments : une liste L et un entier p (Attention à l’ordre des arguments !) alors sample(L,p) renvoie au hasard, p éléments de la liste L.
On tape :

rand(3,["r","r","r","r","v","v","v"])

Ou on tape :

sample(["r","r","r","r","v","v","v"],3)

On obtient :

["r","r","v"]

On tape :

rand(2,1,10)

Ou on tape :

random(2,1,10)

On obtient :

[3,7]

On tape :

rand(2,4,10)

Ou on tape :

random(2,4,10)

On obtient :

[5,7]