Soit la fonction Python suivante :
\verb / from random import* /
\verb / def frequence_succes(n, p): /
\verb / c=0 /
\verb / for k in range(1, n+1): /
\verb / t=random() /
\verb / if t<p: /
\verb / c=c+1 /
\verb # return c/n #
Que représente l'entier \verb/n/ en argument de la fonction \verb/frequence_succes(n, p)/ ?
L'entier n est utilisé dans la boucle \verb/for/ pour effectuer n tirages.
L'entier n représente donc la taille de l'échantillon.
Que représente le flottant \verb/p/ en argument de la fonction \verb/frequence_succes(n, p)/ ?
Le flottant \verb/p/ est utilisé pour incrémenter un compteur dans la boucle \verb/for/ en cas de succès.
Le flottant \verb/p/ représente donc la probabilité de succès.
Que retourne l'instruction \verb/t = random()/ ?
La fonction \verb/random/ du package \verb/random/ permet de tirer une valeur réelle aléatoire entre 0 et 1.
L'instruction \verb/t = random()/ retourne donc une valeur aléatoire entre 0 et 1.
Combien de valeurs prend la variable \verb/k/ dans la boucle \verb/for k in range(1, n+1):/ ?
L'instruction \verb/range(0,k)/ retourne un itérateur qui correspond aux entiers : 0, 1, 2, \cdots, k-1 .
Ici, \verb/range(1,n+1)/ commence à la valeur 1 et s'arrête à la valeur qui précède n+1 , c'est-à-dire n :
1, 2, \cdots, n
Il y a donc n valeurs dans cette boucle.
À quoi correspond la variable \verb/c/ dans les instructions suivantes ?
\verb / if t<p: /
\verb / c=c+1 /
L'instruction conditionnelle \verb/if t < p/ n'est vérifiée que si la valeur aléatoire \verb/t/ entre 0 et 1 est inférieure à \verb/p/ la probabilité de succès. On incrémente la variable \verb/c/ uniquement dans ce cas-là.
Donc \verb/c/ correspond au nombre de succès.