Sunteți pe pagina 1din 18

Lucrarea de laborator 6

Cazuri speciale de repartiţii discrete- generarea variabilelor


aleatoare care urmează repartiţiile Bernoulli, binomială şi
geometrică

Obiective

 Familiarizarea cu câteva cazuri speciale de repartiţii


discrete: repartiţia Bernoulli, repartiţia binomială, repartiţia
geometrică

 Generarea variabilelor aleatoare discrete cu repartiţie


Bernoulli, binomială, geometrică

 Utilizarea cazurilor speciale de repartiţii discrete pentru


rezolvarea unor aplicaţii practice

Enunţul şi scopul lucrării


Aplicaţia 6.1 Se consideră variabila Bernoulli 𝑍 care urmează legea de
probabilitate:
0 1
𝑍=( ) , 𝑞 = 1 − 𝑝,
𝑞 𝑝
unde 𝑝 = 𝑃(𝑍 = 1) este probabilitatea de realizare a unui eveniment 𝐴.
a) Să se genereze cu ajutorul calculatorului 𝑛 realizări independente ale
variabilei 𝑍 şi să se afişeze numărul de apariţii ale evenimentului 𝐴.
b) Să se genereze cu ajutorul calculatorului realizări independente ale
variabilei 𝑍 până când apare evenimentul 𝐴 şi să se afişeze numărul lor 𝑛.
c) Ce semnificaţie are numărul 𝑛 în cele două cazuri a) şi b) ?

Aplicaţia 6.2. O firmă de componente electronice produce circuite integrate, în


cadrul unei linii de fabricaţie automatizată. În urma analizării mai multor loturi
de piese fabricate, departamentul de control al calităţii a descoperit un coeficient
de rebut de p=8%. Din cel mai recent lot de piese fabricate se extrag aleator n
piese, cu revenire (piesa extrasă este pusă înapoi în lot).
a) Care este probabilitatea ca din cele n piese extrase, cel puţin m piese să fie
defecte (m≤ n)?
b) Câte piese defecte se obţin în medie la extragerea a n piese?

57
Modele de simulare. Îndrumar de laborator

Aplicaţia 6.3. Se consideră cunoscută şi constantă probabilitatea p de producere


a evenimentului reprezentat de capturarea unui Pokemon la sfârşitul unui traseu
în jocul Pokemon Go. Dacă se efectuează mai multe trasee independente, care
este probabilitatea ca m încercări să fie suficiente pentru a asigura capturarea
Pokemon-ului? De câte încercări este nevoie în medie, până la prima producere a
evenimentului (capturarea Pokemon-ului)?

Suport teoretic

 Repartiţia Bernoulli

Se consideră un experiment al cărui rezultat poate lua doar două valori,


notate convenţional prin succes sau eşec. Unui astfel de experiment i se asociază
o variabilă aleatoare cu numai două valori: 1 pentru succes şi 0 pentru eşec.
Notând cu 𝑍 variabila asociată şi cu 𝑝 = 𝑃(𝑍 = 1) probabilitatea ca în urma
experimentului rezultatul obţinut să fie succes, legea de probabilitate este
următoarea:
0 1
𝑍=( ),𝑞 = 1 − 𝑝 (6.1)
𝑞 𝑝

- Funcţia de repartiţie a unei variabile Bernoulli este următoarea:

0, 𝑑𝑎𝑐ă 𝑥 < 0
𝐹𝑍 (𝑥) = { 𝑞 𝑑𝑎𝑐ă 0 ≤ 𝑥 < 1 (6.2)
1, 𝑑𝑎𝑐ă 𝑥 > 1
- Algoritmul de simulare a unei variabile Bernoulli (prin metoda
inversării funcţiei de repartiţie) este cel din Figura 6.1:
Citeşte p
𝑍←0
Generează 𝜏~𝑈(0,1)
Dacă 𝜏 < 𝑝 atunci
𝑍←1
Scrie Z
Stop
Figura 6.1. Algoritmul de generare a unei variabile Bernoulli

- Media unei variabile Bernoulli:


M (Z )  p (6.3)

- Dispersia unei variabile Bernoulli:

D 2 (Z )  p  q  p  (1  p) (6.4)

58
Lucrarea de laborator 6

 Repartiţia binomială
Se consideră un experiment de tip Bernoulli repetat în condiţii identice de un
număr de ori, notat n, şi se notează cu k numărul de succese înregistrate. Numărul
k este realizarea unei variabile aleatoare 𝑋, numită variabilă binomială şi are
următoarea lege de probabilitate:
𝑃(𝑋 = 𝑘 ) = 𝐶𝑛𝑘 𝑝𝑘 𝑞𝑛−𝑘 , 𝑘 = 0, 𝑛; 𝑞 = 1 − 𝑝 (6.5)
sau, echivalent:

0 1 2 ⋯ 𝑘 ⋯ 𝑛
𝑋=( ) (6.6)
𝐶𝑛0 𝑝0 𝑞𝑛 𝐶𝑛1 𝑝1 𝑞𝑛−1 𝐶𝑛2 𝑝2 𝑞𝑛−2 ⋯𝐶𝑛𝑘 𝑝𝑘 𝑞𝑛−𝑘 ⋯ 𝐶𝑛𝑛 𝑝𝑛 𝑞0

Observaţie. Pentru simularea unei variabile binomiale putem avea două


abordări:
a) tratăm variabila ca un caz particular de variabilă discretă şi utilizăm
algoritmul descris în Lucrarea de laborator numărul 3. În acest caz,
pentru a micşora efortul de calcul al probabilităţilor, se pot folosi
formulele de recurenţă din Figura 6.2. S-a notat cu 𝑝𝑟𝑖 = 𝑃(𝑋 = 𝑖).
𝑝𝑟0 ← 𝑞 𝑛
pentru 𝑘 ← 1, 𝑛 execută
𝑛−𝑘+1 𝑝
𝑝𝑟𝑘 ← 𝑝𝑟𝑘−1 ∙ ∙
𝑘 𝑞
Figura 6.2. Calculul recurent al probabilităţilor
(repartiţia binomială)
b) observăm că prin modul în care a fost definită, o variabilă aleatoare 𝑋
repartizată binomial se poate scrie ca suma a n variabile independente 𝑍𝑖
repartizate Bernoulli, adică
𝑋 = ∑𝑛𝑖=1 𝑍𝑖 (6.7)
În acest caz, algoritmul de simulare a unei variabile binomiale este mai
simplu şi are reprezentarea din Figura 6.3:
Citeşte p, n
𝑋←0
Pentru 𝑖 ← 1, 𝑛 execută
𝑍←0
generează𝜏~𝑈(0,1)
Dacă 𝜏 < 𝑝 atunci
𝑍←1
𝑋 ←𝑋+𝑍
Scrie X
Stop
Figura 6.3. Algoritmul de generare a unei variabile binomiale

59
Modele de simulare. Îndrumar de laborator

- Funcţia de repartiţie a unei variabile binomiale:

𝐹𝑋 (𝑘 ) = 𝑃(𝑋 < 𝑘 ) = ∑𝑘−1 𝑥 𝑥 𝑛−𝑥


𝑥=0 𝐶𝑛 𝑝 𝑞 (6.8)

- Media unei variabile binomiale:


M (X )  n p (6.9)

- Dispersia unei variabile binomiale:

D2 ( X )  n  p  q (6.10)

 Repartiţia geometrică

Se consideră un experiment de tip Bernoulli repetat în condiţii identice până


când se înregistrează primul succes. Numărul k de încercări efectuate până la
apariţia primului succes este realizarea unei variabile aleatoare 𝑋 , numită
variabilă geometrică şi are următoarea lege de probabilitate:

𝑃(𝑋 = 𝑘 ) = 𝑝𝑞𝑘−1 ; 𝑞 = 1 − 𝑝 (6.11)

sau, echivalent:

1 2 3 ⋯ 𝑘 ⋯
𝑋=( ) (6.12)
𝑝 𝑝𝑞 𝑝𝑞2 ⋯ 𝑝𝑞𝑘−1 ⋯

- Funcţia de repartiţie a unei variabile geometrice este:

𝐹𝑋 (𝑘 ) = 𝑃(𝑋 < 𝑘 ) = ∑𝑘−1


𝑥=1 𝑝𝑞
𝑥−1
(6.13)

- Calculul probabilităţilor din relaţia (6.12) se poate face în mod recurent,


până la o limită superioară n, cu algoritmul din Figura 6.4:

𝑝𝑟1 ← 𝑝
pentru 𝑘 ← 2, 𝑛 execută
𝑝𝑟𝑘 ← 𝑝𝑟𝑘−1 ∙ 𝑞
Figura 6.4. Calculul recurent al probabilităţilor
(repartiţia geometrică)
- Media unei variabile cu repartiţie geometrică:
q
M (X )  (6.14)
p
- Dispersia unei variabile cu repartiţie geometrică:
q
D2 ( X )  (6.15)
p2

60
Lucrarea de laborator 6

- Algoritmul de simulare a unei variabile geometrice (prin numărarea


încercărilor până la obţinerea unui succes) este cel din Figura 6.5:

Citeşte p,n
𝑋←0
Repetă
𝑍←0
Generează 𝜏~𝑈(0,1)
Dacă 𝜏 < 𝑝 atunci
𝑍←1
𝑋 ←𝑋+1
Până când 𝑍 = 1
Scrie X
Stop
Figura 6.5. Algoritmul de generare a unei variabile
cu repartiţie geometrică

Funcţii şi resurse C# utilizate

 controale folosite în interfaţa grafică a aplicaţiei: label, textBox,


button, radioButton, dataGridView (cu atributele şi
funcţiile aferente);
 declararea unei variabile vector de tip real:
double[] x;
 declararea şi instanţierea unui vector x de n numere reale:
double x = new double[n];
 Random r=new Random() - un obiect din clasa Random, declarat şi
instanţiat;
 r.NextDouble() - metodă a clasei Random pentru generarea unui
număr aleator real în intervalul [0,1];
 Math.Pow()- metodă din clasa Math pentru ridicare la putere;
 secvenţe try-catch de tratare a excepţiilor.

Modul de lucru
Aplicaţia 6.1.

Citind cu atenţie enunţul aplicaţiei, precum şi secţiunea Suport teoretic,


se observă că la subpunctul a) se cere generarea unei variabile cu repartiţie
binomială, iar la subpunctul b) generarea unei variabile cu repartiţie geometrică.

61
Modele de simulare. Îndrumar de laborator

Se va construi o singură aplicaţie C# pentru rezolvarea tuturor


subpunctelor cerute în enunţul Aplicaţiei 6.1. Pentru aceasta, se vor parcurge
următorii paşi:

1. Construirea interfeţei grafice a aplicaţiei (Figura 6.6):

textBox1
textBox3
label1
textBox2

radioButton1
label2

radioButton2

button1

Figura 6.6. Interfaţa grafică a Aplicaţiei 6.1

- se setează proprietăţile formei Form1 (titlu, culoare, dimensiune etc.);


- se adaugă pe formă următoarele componente:
o label1 – pentru etichetarea datei de intrare p (probabilitatea de
producere a evenimentului studiat);
o textBox1 – pentru introducerea valorii lui p;
o radioButton1 – pentru selectarea opţiunii de generare a
variabilei binomiale - subpunctul a) al Aplicaţiei 6.1;
o radioButton2 – pentru selectarea opţiunii de generare a
variabilei geometrice - subpunctul b) al Aplicaţiei 6.1;
o label2 – pentru etichetarea datei de intrare n (numărul de
experimente efectuate în cazul generării variabilei binomiale);
o textBox2 – pentru introducerea valorii lui n;
o button1 – buton pentru generarea variabilei aleatoare
binomiale/geometrice, în funcţie de butonul radio bifat;
o textBox3– pentru afişarea rezultatelor.

62
Lucrarea de laborator 6

2. Se declară variabilele globale:

int n;
double p, q;
Random r = new Random();

3. Se defineşte o funcţie pentru generarea variabilei aleatoare Z, cu repartiţie


Bernoulli (algoritmul din Figura 6.1); funcţia va avea ca parametru p –
probabilitatea de realizare a evenimentului A:

int Bernoulli(double p)
{
int z = 0;
double tau = r.NextDouble();
if (tau < p)
z = 1;
return z;
}

4. Se defineşte funcţia asociată butonului button1, la evenimentul Click:


private void button1_Click(object sender, EventArgs e)
{
int i, x, z;
try
{
p = Convert.ToDouble(textBox1.Text);
}
catch
{
MessageBox.Show("Introduceti un numar real intre 0 si 1 pentru p!");
}
textBox3.Clear();
if (radioButton1.Checked)
{
try
{
n = Convert.ToInt16(textBox2.Text);
x = 0;
for (i = 1; i <= n; i++)
{
z = Bernoulli(p);
textBox3.AppendText("\r\nExperimentul "+i.ToString()+
": "+z.ToString());
if (z == 1)
textBox3.AppendText(" - Succes");
else
textBox3.AppendText(" - Esec");
x += z;
}

63
Modele de simulare. Îndrumar de laborator

textBox3.AppendText("\r\n\r\nNumarul de aparitii ale


evenimentului A: " + x.ToString());
textBox3.AppendText("\r\n\r\n" + x.ToString()+
" succese din n="+n.ToString()+" experimente");
}
catch
{
MessageBox.Show("Introduceti un numar natural pentru n!");
}
}
else
if(radioButton2.Checked)
{
textBox2.Clear();
x = 0;
do
{
z = Bernoulli(p);
x++;
textBox3.AppendText("\r\nExperimentul " + x.ToString() +
": " + z.ToString());
if (z == 1)
textBox3.AppendText(" - Succes");
else
textBox3.AppendText(" - Esec");
}
while (z == 0);
textBox3.AppendText("\r\n\r\nn= " + x.ToString()+
" experimente pana la producerea evenimentului A");
}
}

Observaţii

- Alegerea repartiţiei ce va fi generată se face cu ajutorul celor două butoane


radio, care se exclud reciproc;
- Generarea variabilei binomiale necesită anterior introducerea valorii lui n -
numărului de experimente efectuate (𝑛 realizări independente ale variabilei
𝑍);
- În funcţia care tratează evenimentul Click al componentei button1 s-au
implementat algoritmii de generare a unei variabile binomiale (algoritmul
prezentat în pseudocod în Figura 6.3), respectiv de generare a unei variabile
cu repartiţie geometrică (algoritmul din Figura 6.5);
- Prin secvente de tip try-catch s-au tratat ca excepţii situaţiile în care
datele de intrare ale problemei nu sunt introduse în mod corespunzător.
Sunt prezentate în continuare câteva exemple de rulare a aplicaţiei.

64
Lucrarea de laborator 6

În Figura 6.7, ca un exemplu de rezultat pentru subpunctul a) al Aplicaţiei


6.1, se observă că pentru o probabilitate de realizare a evenimentului A mică (p =
0.1), din n=12 experimente, s-au obţinut 2 succese.

Figura 6.7. Repartiţia binomială: p=0.1, n=12

Pentru o probabilitate p mare (p = 0.95), din 12 experimente simulate, s-au


obţinut 11 succese (Figura 6.8).

Figura 6.8. Repartiţia binomială: p=0.95, n=12

Pentru generarea variabilei cu repartiţie geometrică (al doilea subpunct al


Aplicaţiei 6.1), sunt prezentate în continuare două exemple. În Figura 6.9 este
ilustrat cazul unei variabile Bernoulli cu probabilitatea p = 0.9. Se observă că au
fost necesare n = 2 experimente Bernoulli până la realizarea evenimentului A.

65
Modele de simulare. Îndrumar de laborator

Figura 6.9. Repartiţia geometrică: p=0.9

În Figura 6.10 este prezentată situaţia când probabilitatea de realizare a


evenimentului A este foarte mică (p = 0.01). Se observă că au fost necesare
n=275 de experimente (încercări) până la primul succes.

Figura 6.10. Repartiţia geometrică: p=0.01

66
Lucrarea de laborator 6

Aplicaţia 6.2.
Pentru rezolvarea acestei aplicaţii se foloseşte repartiţia binomială. Se
consideră evenimentul „piesa extrasă aleator din lot este defectă”. Întrucât se
cunoaşte probabilitatea p de realizare a acestui eveniment în cadrul unui
experiment, variabila binomială va avea semnificaţia: “câte din cele n piese
extrase sunt defecte”.

Probabilitatea ca din cele n piese extrase, cel puţin m piese să fie defecte
va fi:

𝑃(𝑋 ≥ 𝑚) = ∑𝑛𝑘=𝑚 𝐶𝑛𝑘 𝑝𝑘 𝑞𝑛−𝑘 (6.16)

Pentru a determina câte piese defecte se obţin în medie la extragerea


aleatoare a n piese, se calculează media variabilei binomiale (relaţia 6.9).

Se vor parcurge următorii paşi:

1. Construirea interfeţei grafice a aplicaţiei (Figura 6.11):

label1 textBox1

button1

dataGridView1
label2 textBox2

label3 textBox3

button2 textBox4

button3

Figura 6.11. Interfaţa grafică a Aplicaţiei 6.2

- se setează proprietăţile formei Form1 (titlu, culoare, dimensiune etc.);


- se adaugă pe formă următoarele componente:
o label1 – pentru etichetarea datei de intrare p (probabilitatea ca la
o extragere să se obţină o piesă defectă);
o textBox1 – pentru introducerea valorii lui p;
o label2 – pentru etichetarea datei de intrare n (numărul de piese
extrase);

67
Modele de simulare. Îndrumar de laborator

o textBox2 – pentru introducerea valorii lui n;


o dataGridView1 – componentă de forma unui tabel, folosită
pentru legea de probabilitate a variabilei binomiale. Din fereastra de
proprietăţi se setează următoarele (alte proprietăţi vor fi setate în
codul aplicaţiei):
- proprietatea AllowUserToAddRows = False;
- proprietatea AllowUserToDeleteRows = False;
- proprietatea ColumnHeadersVisible = False (nu
se foloseşte o primă linie antet);
- proprietatea AutoSizeColumnsMode = AllCells;
- proprietatea Visible = False (componenta va deveni
vizibilă la acţionarea butonului button1);
o button1 – buton pentru completarea în dataGridView1 a legii
de probabilitate a variabilei binomiale (calculul probabilităţilor);
o label3 – pentru etichetarea datei de intrare m;
o textBox3– pentru introducerea valorii lui m;
o button2 – buton pentru calculul probabilităţii ca din n piese
extrase, cel puţin m piese să fie defecte;
o button3 – buton pentru calculul numărului mediu de piese defecte
din n piese extrase;
o textBox4 – pentru afişarea rezultatelor.

2. Se declară variabilele globale:


double p, q;
double[] pr;
int n;

3. Se defineşte funcţia care tratează evenimentul Click corespunzător


componentei button1 (se calculează probabilităţile cu algoritmul din Figura
6.2):
private void button1_Click(object sender, EventArgs e)
{
int i;
try
{
p = Convert.ToDouble(textBox1.Text);
n = Convert.ToInt16(textBox2.Text);
dataGridView1.Visible = true;
dataGridView1.RowCount = 2;
dataGridView1.ColumnCount = n+1;

68
Lucrarea de laborator 6

dataGridView1.Rows[0].HeaderCell.Value = "X";
dataGridView1.Rows[1].HeaderCell.Value = "p";
q = 1 - p;
pr = new double[n+1];
pr[0] = Math.Pow(q, n);
for (i = 1; i <= n; i++)
pr[i] = pr[i - 1] * ((n - i + 1) * p)/(i* q);
for(i=0;i<=n;i++)
{
dataGridView1.Rows[0].Cells[i].Value = i.ToString();
dataGridView1.Rows[1].Cells[i].Value=pr[i].ToString("0.00000");
}
}
catch
{
MessageBox.Show("Introduceti un numar real intre 0 si 1
pentru p!\r\nIntroduceti un numar natural pentru n!");
}
}

4. Se defineşte funcţia care tratează evenimentul Click corespunzător


componentei button2:

private void button2_Click(object sender, EventArgs e)


{
int m,i;
double P = 0;
try
{
m = Convert.ToInt16(textBox3.Text);
for (i = m; i <= n; i++)
P += pr[i];
textBox4.Clear();
textBox4.AppendText("\r\nProbabilitatea ca din " +
n.ToString() + " piese extrase, cel putin " + m.ToString() +
" piese sa fie defecte este:\r\nP=" + P.ToString("0.000000"));
}
catch
{
MessageBox.Show("Introduceti un numar natural pentru m!");
}
}
5. Se defineşte funcţia care tratează evenimentul Click corespunzător
componentei button3 (se calculează media cu relaţia (6.9)):

private void button3_Click(object sender, EventArgs e)


{
double M = n * p;
textBox4.AppendText("\r\n\r\nLa extragerea a "+n.ToString()+

69
Modele de simulare. Îndrumar de laborator

" piese, se obtin in medie " + M.ToString("0.00") +


" piese defecte");
}

Rezultatele obţinute la extragerea a 9 piese, considerând coeficientul de


rebut p=8%, sunt prezentate în Figura 6.12.

Figura 6.12. Rezultate Aplicaţia 6.2 (p=0.08, n=9)

Aplicaţia 6.3.

Pentru rezolvarea acestei aplicaţii se foloseşte repartiţia geometrică. Se


consideră evenimentul „la sfârşitul traseului, va fi capturat un Pokemon”.
Întrucât se cunoaşte probabilitatea p de producere a acestui eveniment în cadrul
unui experiment, variabila geometrică va avea semnificaţia: “de câte încercări
este nevoie până la capturarea primului Pokemon”.
Probabilitatea ca m încercări să fie suficiente pentru a asigura capturarea
Pokemon-ului va fi:
𝑃 (𝑋 ≤ 𝑚 ) = ∑ 𝑚
𝑘=1 𝑝𝑞
𝑘−1
(6.17)
Pentru a determina de câte încercări este nevoie în medie până la primul
succes, se calculează media variabilei geometrice (relaţia 6.14).
Se vor parcurge următorii paşi:

1. Construirea interfeţei grafice a aplicaţiei (Figura 6.13):


- se setează proprietăţile formei Form1 (titlu, culoare, dimensiune etc.);

70
Lucrarea de laborator 6

textBox1 button1 button2


label1

dataGridView1

label2 textBox2

textBox3

Figura 6.13. Interfaţa grafică a Aplicaţiei 6.3

- se adaugă pe formă următoarele componente:


o label1 – pentru etichetarea datei de intrare p (probabilitatea de
succes);
o textBox1 – pentru introducerea valorii lui p;
o label2 – pentru etichetarea datei de intrare m;
o textBox2 – pentru introducerea valorii lui m;
o dataGridView1 – componentă de forma unui tabel, folosită
pentru legea de probabilitate a variabilei cu repartiţie geometrică.
Din fereastra de proprietăţi se setează următoarele (alte proprietăţi
vor fi setate în codul aplicaţiei):
- proprietatea AllowUserToAddRows = False;
- proprietatea AllowUserToDeleteRows = False;
- proprietatea ColumnHeadersVisible = False (nu
se foloseşte o primă linie antet);
- proprietatea AutoSizeColumnsMode = AllCells;
- proprietatea Visible = False (componenta va deveni
vizibilă la acţionarea butonului button1);
o button1 – buton pentru completarea în dataGridView1 a legii
de probabilitate a variabilei geometrice şi pentru calculul
probabilităţii ca m încercări să fie suficiente pentru asigurarea
succesului;
o button2 – buton pentru calculul numărului mediu de încercări
necesare pentru asigurarea succesului;
o textBox3 – pentru afişarea rezultatelor.

71
Modele de simulare. Îndrumar de laborator

2. Se declară variabilele globale:


double p, q;

3. Se defineşte funcţia care tratează evenimentul Click corespunzător


componentei button1 (se calculează probabilităţile cu algorimtul din Figura
6.4):

private void button1_Click(object sender, EventArgs e)


{
double P;
double[] pr;
int m,i;
try
{
p = Convert.ToDouble(textBox1.Text);
m = Convert.ToInt16(textBox3.Text);
dataGridView1.Visible = true;
dataGridView1.RowCount = 2;
dataGridView1.ColumnCount = m;
dataGridView1.Rows[0].HeaderCell.Value = "X";
dataGridView1.Rows[1].HeaderCell.Value = "p";
q = 1 - p;
pr = new double[m];
pr[0] = p;
for (i = 1; i < m; i++)
pr[i] = pr[i - 1] * q;
P = 0;
for (i=0;i<m;i++)
{
dataGridView1.Rows[0].Cells[i].Value = (i+1).ToString();
dataGridView1.Rows[1].Cells[i].Value =pr[i].ToString("0.000000");
P += pr[i];
}
textBox4.Clear();
textBox4.AppendText("\r\nProbabilitatea ca " + m.ToString() +
" incercari sa fie suficiente pentru a asigura succesul este:
\r\nP=" + P.ToString("0.000000"));
}
catch
{
MessageBox.Show("Introduceti un numar real intre 0 si 1
pentru p!\r\nIntroduceti un numar natural pentru m!");
}
}

4. Se defineşte funcţia care tratează evenimentul Click corespunzător


componentei button2 (se calculează media cu relaţia (6.14)):

72
Lucrarea de laborator 6

private void button2_Click(object sender, EventArgs e)


{
double M = q/p;
textBox4.AppendText("\r\n\r\nEste nevoie de " + M.ToString("0.00") +
" incercari in medie pentru asigurarea succesului");
}

În Figura 6.14 este prezentat un exemplu de rulare a aplicaţiei, în care s-a


considerat că probabilitatea de succes în cadrul unei încercări este p = 0.2. Se
observă că, în aceste condiţii, probabilitatea ca 6 încercări să fie suficiente pentru
a asigura succesul este de 0.737 şi că în medie, este nevoie de 4 încercări până la
obţinerea primului succes.

Figura 6.14. Rezultate Aplicaţia 6.3 ( p=0.2, m=6)

Pentru un eveniment cu probabilitatea de realizare mare (p = 0.9) se poate


observa în Figura 6.15 că 2 încercări asigură obţinerea succesului cu o
probabilitate foarte mare de 0.99.

73
Modele de simulare. Îndrumar de laborator

Figura 6.15. Rezultate Aplicaţia 6.3 ( p=0.9, m=2)

74

S-ar putea să vă placă și