Exercise 2.7Z: C Program "z3"

From LNTwww
Revision as of 19:59, 13 October 2016 by Nabil (talk | contribs)

P ID123 Sto Z 2 7.png
Das nebenstehend angegebene C-Programm z3 erzeugt sukzessive eine binomialverteilte Zufallsgröße mit den charakteristischen Kenngrößen $l$ und $p$. Es verwendet dabei das Programm $z1$, das bereits in Aufgabe A2.7 beschrieben und analysiert wurde.
Gehen Sie davon aus, dass das Programm mit den Parametern $l = 4$ und $p = 0.75$ aufgerufen wird. Die ersten acht vom Zufallsgenerator random() erzeugten reellwertigen Zahlen (alle zwischen 0 und 1) lauten:
$$\rm 0.75, 0.19, 0.43, 0.08, 0.99, 0.32, 0.53, 0.02.$$







Hinweis: Diese Aufgabe gehört zu Kapitel 2.5.

Fragebogen

1

Welche der nachfolgenden Aussagen sind zutreffend?

Das Programm z3 liefert eine binomialverteilte Zufallsgröße, weil mehrere Binärwerte aufsummiert werden.
Zur Übergabe der Wahrscheinlichkeiten an das Programm z1 wird das Feld p_array = [1–p, p] benutzt.
Die Übergabe von „M = 2” an die Funktion z1 muss mit „2L” geschehen, da dieses Programm einen Long-Wert erwartet.

2

Welcher Wert wird beim ersten Aufruf von z3 ausgegeben?

$1.\text{ Aufruf: z3}$ =

3

Welcher Wert wird beim zweiten Aufruf von z3 ausgegeben?

$2.\text{ Aufruf: z3}$ =


Musterlösung

1.  Alle drei Aussagen sind richtig.
2.  Die reellwertigen Zufallszahlen 0.75, 0.19, 0.43 und 0.08 werden jeweils mit 0.25 verglichen und führen zu den Binärwerten 1, 0, 1, 0. Das ergibt im ersten Aufruf die Summe z3 = 2.
3.  Analog zum Ergebnis von b) treten wegen der Zufallswerte 0.99, 0.32, 0.53 und 0.02 nun die Binärwerte 1, 1, 1 und 0 auf. Dies führt zum Ausgabewert z3 = 3 (Summe der Binärwerte).