### 8.3.9 Matrice aléatoire : `ranm randmatrix randMat`

`ranm` (ou `randmatrix` ou `randMat`) (voir aussi 6.27.32 et 6.45.3) peut avoir comme argument :

- un entier `s`, dans ce cas `ranm` renvoie une liste de longueur `s` dont les éléments sont des entiers pris au hasard de façon équiprobable dans :
  `[-99,-98,...,98,99]`.
  On tape :
  `ranm(5)`
  On obtient par exemple :
  `[-40,27,4,-1,94]`
- deux entiers `n,p`, dans ce cas `ranm` renvoie une matrice de `n` lignes et `p` colonnes dont les éléments sont des entiers pris au hasard de façon équiprobable dans `[-99,-98,...,98,99]`.
  On tape :
  `ranm(2,3)`
  On obtient par exemple :
  `[[-32,53,-44],[10,-4,25]]`
- deux entiers `n,p` et un entier relatif `a`, dans ce cas `ranm` renvoie une matrice de `n` lignes et `p` colonnes dont les éléments sont des entiers pris au hasard de façon équiprobable dans `[0;a[` (ou `]a;0]` si `a` est négatif)
  On tape :
  `ranm(2,3,10)`
  On obtient par exemple :
  `[[8,3,7],[7,9,1]]`
- deux entiers `n,p` et un intervalle `a..b`, dans ce cas `ranm` renvoie une matrice de `n` lignes et `p` colonnes dont les éléments sont des réels pris au hasard de façon équiprobable dans `[a;b[`.
  On tape :
  `ranm(2,3,0..1)`
  On obtient par exemple :
  `[[0.840187716763,0.394382926635,0.783099223394],`
  `[0.798440033104,0.911647357512,0.197551369201]]`
- deux entiers `n,p` et une fonction aléatoire de `Xcas` qu’il faut quoter, dans ce cas `ranm` renvoie une matrice de `n` lignes et `p` colonnes dont les éléments sont pris au hasard selon la fonction donnée en troisième argument.
  Les fonctions données en troisième argument qui doivent être quoter, peuvent être :
  `’rand(n)’`
  `’binomial(n,p)’` ou `binomial,n,p` ou`’randbinomial(n,p)’`
  `’multinomial(P,K)’` ou `multinomial,P,K` ou `’randmultinomial(P,K)’`
  `’poisson(``λ``)’` ou `poisson,` `λ` ou `’randpoisson(``λ``)’`
  `’normald(``µ``,``σ``)’` ou `normald,``µ``,``σ` ou `’randnorm(``µ``,``σ``)’`
  `’exp(a)’` ou `exp,a` ou `’randexp(a)’`
  `’fisher(n,m)’` ou `fisher,n,m` ou `’randfisher(n,m)’`
  On tape :
  `ranm(3,2,’rand(3)’)`
  ou
  `ranm(3,2,3)`
  On obtient par exemple :
  `[[2,1],[0,0],[1,0]]`
  On tape :
  `ranm(1,2,’randnorm(0,1)’)`
  On obtient par exemple :
  `[[1.37439065645,-1.33195982697]]`