dh-Materialien
Maple   
Anwendungen

Keno

> restart;
  randomize();
  interface(displayprecision = 4):

20 Zahlen werden aus 70 möglichen Zahlen zufällig gezogen:

> gezogeneZahlen:= combinat[randcomb](70, 20);

keno1 

Anzahl aller möglichen Zahlenkombinationen "20 aus 70", die gezogen werden können:

> binomial(70, 20);

keno2 

Ein Spieler wählt in einem Spielfeld 10 Zahlen zufällig aus:

> angekreuzteZahlen:= combinat[randcomb](70, 10);

keno3 

Anzahl aller für diesen Spieler möglichen Zahlenkombinationen:

> binomial(70, 10);

keno4 

Wahrscheinlichkeit des Ereignisses "k Richtige bei n zufällig ausgewählten Zahlen";
2 n 10:

> P:= (n, k) -> ((binomial(20, k)*binomial(50, n-k))/binomial(70, n));

keno5 

Wahrscheinlichkeit für "6 Richtige bei 10 zufällig ausgewählten Zahlen":

> evalf(P(10, 6));

keno6 

Wahrscheinlichkeit Pw6 des Ereignisses "weniger als 6 Richtige":

> Pw6:= 1 - Sum(P(n, k), k = 6..n);

keno7 

Wahrscheinlichkeit bei z Spielfeldern mindestens einmal mindestens 6 Richtige zu haben:

> Pmm6:= z -> 1 - Pw6^z:
Pmm6(z);

keno8 

Wahrscheinlichkeit bei 15 Spielfeldern mindestens einmal mindestens 6 Richtige zu haben:

> n:= 10;
evalf(Pmm6(15));

keno9 

Wahrscheinlichkeit, mindestens einmal mindestens 6 Richtige zu haben, für n = 10 in Abhängigkeit von z:

> n:= 10:
for i from 10 by 5 to 40 do
  evalf(Pmm6(i)):
  printf ("%57d%12.6f\n", i, %);
od:

keno10 

Zufälliges Ausfüllen von 15 Spielfeldern:  

> for i from 1 to 15 do
feld[i]:= combinat[randcomb](70, 10):
  printf("%40d%s%a\n", i, " ", feld[i]);
od:

keno11 

20 Zahlen werden aus 70 Zahlen zufällig gezogen:

> Gewinnzahlen:= combinat[randcomb](70, 20);

keno12 

Wieviele der 15 Spielfelder weisen mindestens 6 Richtige auf?

> m6:= 0:
for i from 1 to 15 do
  r:= 0:
  for j from 1 to 20 do
    if is (Gewinnzahlen[j] in feld[i]) then r:= r + 1: fi:
  od:
  if r > 5 then m6:= m6 + 1: fi:
od:
m6;

0 

x-malige Wiederholung dieses Spiels mit jeweils z Spielfeldern:

> Gewinnzahlen:= combinat[randcomb](70, 20);
spiel:= proc(z, x)
  local k, i, j, r, feld, m, mw;
  global Gewinnzahlen;

  mw:= 0:
  for k from 1 to x do
    m:= 0:
    for i from 1 to z do
      feld[i]:= combinat[randcomb](70, 10):
      r:= 0:
      for j from 1 to 20 do
        if is (Gewinnzahlen[j] in feld[i]) then r:= r + 1: fi:
      od:
      if r > 5 then m:= m + 1: fi:
    od:

    #printf ("%63d\n", m);
    if m > 0 then mw:= mw + 1: fi:
  od;
  return evalf(mw/x, 2): 
end:

Jeweilige Anzahl der Felder mit mindestens 6 Richtigen bei x Durchläufen;
h = relative Häufigkeit für "mindestens einmal mindestens 6 Richtige mit z = 15":

> x:= 40;
  h:= spiel(15, x);

keno14