Exercise 2.7Z: C Program "z3"

From LNTwww
Revision as of 13:19, 14 November 2019 by Guenter (talk | contribs)

C-Programm  $z3$  zur Generierung
einer Binomialverteilung

Das nebenstehend angegebene C-Programm  $z3$  erzeugt sukzessive eine binomialverteilte Zufallsgröße mit den charakteristischen Kenngrößen  $I$  und  $p$. 

  • Es verwendet dabei das Programm  $z1$, das bereits in  Aufgabe 2.7  beschrieben und analysiert wurde.
  • Gehen Sie davon aus, dass das Programm mit den Parametern  $I = 4$  und  $p = 0.75$  aufgerufen wird.
  • Die ersten acht vom Zufallsgenerator  $\text{random()}$  erzeugten reellwertigen Zahlen  (alle zwischen Null und Eins)  lauten:
$$\rm 0.75, \ 0.19, \ 0.43, \ 0.08, \ 0.99, \ 0.32, \ 0.53, \ 0.02.$$





Hinweise:


Fragebogen

1

Welche der folgenden Aussagen sind zutreffend?

$z3$  liefert eine binomialverteilte Zufallsgröße, weil mehrere Binärwerte aufsummiert werden.
Zur Parameterübergabe an das Programm $z1$ wird das Feld  $\text{p_array} = \big [1-p, \ \ p \big]$  benutzt.
Die Übergabe von  $M=2$  muss mit „$\rm 2L$” geschehen, da  $z1$  einen Long-Wert erwartet.

2

Welcher Wert wird beim  ersten Aufruf  von  $z3$  ausgegeben?

$z3 \ = \ $

3

Welcher Wert wird beim  zweiten Aufruf  von  $z3$  ausgegeben?

$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 $\underline{z3 = 2}$.


(3)  Analog zum Ergebnis der Teilaufgabe (2) treten nun wegen der Zufallswerte $0.99$, $0.32$, $0.53$ und $0.02$ die Binärwerte $1, 1, 1, 0$ auf.
Dies führt zum Ausgabewert $\underline{z3 = 3}$ (wiederum Summe der Binärwerte).