Probabilités
1°) Les probabilités et VB
Pour simuler une épreuve aléatoire on utilise la fonction Random qui génère un nombre pseudo aléatoire (il est en réalité basé sur un algorithme) compris entre 0 et 1.
Exemple : Randomize donne une nouvelle valeure pour rnd
Label1.caption=10*rnd donne un nombre compris entre 0 et 10
2°) Différences Probabilités/Statistiques
Les statistiques sintéressent à des faits passés alors que les probabilités sintéressent à des situations qui ne se sont pas encore produites. Il existe pourtant un lien étroit entre ces deux disciplines a cause de al loi des grands nombres : « La probabilité dapparition dun résultat dans ne épreuve aléatoire est pratiquement égale à la fréquence dapparition de ce résultat quand on a répété un grand nombre de fois cette même épreuve »
3°) Vocabulaire
- Epreuve aléatoire : Situation dont les résultats dépendent du hasard
- Issue : Un des cas possibles
- Univers : Ensemble des cas possibles
- Evénement : Un ou plusieurs éléments appartenant à lunivers
- Loi de probabilité : Fonction qui a chaque issue associe une probabilité
- Variable aléatoire : Une grandeur numérique dont la valeur dépend de lissue de lépreuve.
4°) Simuler une épreuve Aléatoire
Pour simuler une épreuve aléatoire nous ne disposons que de la fonction random, il faut donc associer a chaque issue un intervalle contenu dans le but de la fonction random.
Exemple 1 Lancé de dé (voir la source http://www.vbfrance.com/codes/MATHEMATIQUES-PEDAGOGIQUES_36220.aspx puis chercher dans probabilités lépreuve aléatoire suivante)
Public Function Dé(n As Long) As Long
Randomize
Dé = Fix(6 * Rnd + 1) donne une valeure entiere comprise entre 1 et 6
End Function
Exemple 2 Une urne contient 6 boules jaunes et 4 boules rouges, on en choisis une au hasard
Public Function Rouge() As Boolean
Randomize 'donne une nouvelle valeur pour rnd
If Rnd > 0.6 Then 'L'intervalle tien compte de la probabilité
Rouge = True
Else: Rouge = False
End If
End Function
Private Sub Command1_Click()
If Rouge() = True Then
MsgBox "rouge"
Else: MsgBox "jaune"
End If
End Sub
5°) Probabilités et Combinaisons
Une épreuve aléatoire n'est pas toujours aussi simple, par exemple, une urne contient 10 boules numerotées, on tire simultanément 3 boules.
Pour déterminer la loi de probabilité, il faut connaitre le nombre de tirages possibles:
10 choix pour la premiere
9 choix pour la deuxieme
8 choix pour la troisieme
Soit 10*9*8=720 possibilités, cependant dans un tirage simultané, il y a des doubles
exemple {5,9,7}={7,5,9}
il y a 3*2*1=6 listes de ce type
Il reste donc 120 tirages possibles.
On dit qu'il y a 120 combinaisons de 3 boules parmi 10
Généralisation
le nombre de combinaison de p elements parmi n est (n!)/(p!(n-p)!)
Programme calculant factorielles et combinaisons voir http://www.vbfrance.com/codes/FACTORIELS-COMBINAISONS_32744.aspx
Function Combinaison(n As Long, k As Long) As Long
'Les deux premieres étapes évitent des calculs évidents
If k = 0 Or n = k Then
Combinaison = 1
Exit Function
End If
If k = 1 Or k = n - 1 Then
Combinaison = n
Exit Function
End If
Combinaison = Factoriel(n) / (Factoriel(k) * Factoriel(n - k))
End Function
Function Factoriel(n As Long) As Long
Dim f As Long
If n <= 1 Then
'Par convention 0!=1
Factoriel = 1
Else Factoriel = n * Factoriel(n - 1)
End If
End Function