next up previous contents index
suivant: Analyse du résultat monter: Simulation avec une loi précédent: Simulation de la fabrication   Table des matières   Index

Simulation de la pesée du professeur

Remarque
Pour la simulation, on ne refait pas le pain tous les jours !
A:=pain(n);
est mis au début, et non dans la boucle (là où il est commenté), car sinon le programme est trop long à l'exécution.
p représente le nombre de jours pendant lesquels on effectue la pesée et pj représente le poids obtenu chaque jour.
On classe ces poids dans P : P[0] est égal au nombre de pains de poids 192 grammes, P[1] est égal au nombre de pains de poids 193 grammes... m est alors la moyenne des poids obtenus.
client(p,n):={
local pj,A,P,j,m;
P:=makelist(x->0,0,12,1);
A:=pain(n);
S:=0;
for (k:=0;k<p;k++){
    //A:=pain(n);
    j:=rand(n);	
    pj:=A[j];
    S:=S+pj;
    pj:=pj-192;
    P[pj]:=P[pj]+1;
};
m:=evalf(S/p);
xyztrange(-0.2,12.2,-1,36,-10,10,-10,-10,-0.2,12.2,
          -1,36,1);
switch_axes(NULL);
return([A,P,m,segment(0,i*P[0]),segment(1,1+i*P[1]),
 segment(2,2+i*P[2]),segment(3,3+i*P[3]),
 segment(4,4+i*P[4]),segment(5,5+i*P[5]),
 segment(6,6+i*P[6]),segment(7,7+i*P[7]),
 segment(8,8+i*P[8]),segment(9,9+i*P[9]),
 segment(10,10+i*P[10]),segment(11,11+i*P[11]),
 segment(12,12+i*P[12])]);
};
On a obtenu pour client(100,1000) :
P=[1,1,1,3,14,16,34,17,5,5,3,0,0]
m=197.86
On trouvera les 1000 valeurs de A (obtenues par simulation) dans le fichier painA du répertoire simulation.
En théorie on doit avoir :
3 pains de poids 193 g et 3 de poids 203 g
16 pains de poids 194 g et 16 de poids 202 g
54 pains de poids 195 g et 54 de poids 201 g
121 pains de poids 196 g et 121 de poids 200 g
193 pains de poids 197 g et 193 de poids 199 g
225 pains de poids 198 g
Voici le "diagramme en bâtons" de la distribution des pains (variable P) que le professeur a obtenu :
\begin{pspicture}(0,0)(12.2000,12.0000)
\psset{unit=0.3871cm}
\psset{linewidth=....
...
\psset{linecolor=black}
\psline(12.0000,0.0000)(12.0000,0.0000)
\end{pspicture}

Il suffit de rajouter la ligne dans le programme précédent (au bon enfroit!) :
while (pj<200) {j:=rand(n); pj:=A[j];}
qui permet de choisir un pain de poids supérieur ou égal à 200 grammes.
chouchou(p,n):={
  local pj,A,P,j,m;
  P:=makelist(x->0,0,12,1);
  A:=pain(n);
  S:=0;
  for (k:=0;k<p;k++){
    //A:=pain(n);
    j:=rand(n);	
    pj:=A[j];
    //si le poids pj<200g on prend un autre pain
    while (pj<200) {j:=rand(n); pj:=A[j];}
    S:=S+pj;
    pj:=pj-192;
    P[pj]:=P[pj]+1;
  };
  m:=evalf(S/p);
  xyztrange(-0.2,12.2,-1,60.0,-10,10,-10,-10,-0.2,
            12.2,-1,60,1);
  switch_axes(NULL);
  return([A,P,m,segment(0,i*P[0]),segment(1,1+i*P[1]),
    segment(2,2+i*P[2]),segment(3,3+i*P[3]),
    segment(4,4+i*P[4]),segment(5,5+i*P[5]),
    segment(6,6+i*P[6]),segment(7,7+i*P[7]),
    segment(8,8+i*P[8]),segment(9,9+i*P[9]),
    segment(10,10+i*P[10]),segment(11,11+i*P[11]),
    segment(12,12+i*P[12])]);
};
On a obtenu pour chouchou(100,1000) :
P=[0,0,0,0,0,0,0,0,69,24,7,0,0]
m=200.38
et le "diagramme en bâtons" de la distribution des pains (variable P) que le professeur a obtenu a été le suivant :

\begin{pspicture}(0,0)(12.2000,12.0000)
\psset{unit=0.1967cm}
\psset{linewidth=....
...
\psset{linecolor=black}
\psline(12.0000,0.0000)(12.0000,0.0000)
\end{pspicture}

next up previous contents index
suivant: Analyse du résultat monter: Simulation avec une loi précédent: Simulation de la fabrication   Table des matières   Index
Documentation de giac écrite par Renée De Graeve