Simulation einer Stichprobenentnahme ohne Zurücklegen
Eine Funktion für
Stichprobenentnahme
ohne Zurücklegen
Ausführen einer
Stichprobenentnahme
In dieser Biespiel wird gezeigt, wie Sie das Ziehen
verschiedenfarbiger Kugeln aus einem Gefäß ohne
Zurücklegen simulieren können. Nähere Erläuterungen zu
den Schritten dieses Beispiels finden Sie in Kapitel 17,
Programmierung.
Definieren Sie im Programmeditor die Funktion
Aufrufparameter. Der erste Parameter ist eine Liste, in der jedes
Element die Anzahl der Kugeln einer bestimmten Farbe ist. Der
zweite Parameter ist die Anzahl der auszuwählenden (zu ziehenden)
Kugeln. Die Funktion gibt eine Liste zurück, in der jedes Element die
Anzahl der für jede Farbe gezogenen Kugeln wiedergibt.
:drawball(urnlist,drawnum)
:Func
:Local templist,drawlist,colordim,
numballs,i,pick,urncum,j
:If drawnum>sum(urnlist)
:Return "zu wenige Kugeln"
:dim(urnlist)! colordim
:urnlist! templist
:newlist(colordim)! drawlist
:For i,1,drawnum,1
:sum(templist)! numballs
:rand(numballs)! pick
:For j,1,colordim,1
:cumSum(templist)! urncum
(Fortsetzung in der nächsten Spalte)
Nehmen Sie an, ein Gefäß enthält n1 Kugeln einer ersten Farbe, n2
Kugeln einer zweiten Farbe, n3 Kugeln einer dritten Farbe usw.
Simulieren Sie das Ziehen von Kugeln ohne Zurücklegen.
1. Geben Sie mit dem Befehl
eine Ausgangsbasis für
RandSeed
die Zufallszahlgenerierung ein.
2. Nehmen Sie an, das Gefäß enthält
10 rote und 25 weiße Kugeln , und
simulieren Sie die Entnahme von
5 Kugeln ohne Zurücklegen.
Geben Sie ein:
drawball({10,25},5)
Ergebnis: 2 rote und drei 3 weiße
Kugeln.
drawball()
:If pick urncum[j] Then
:drawlist[j]+1! drawlist[j]
:templist[j]ì 1! templist[j]
:Exit
:EndIf
:EndFor
:EndFor
:Return drawlist
:EndFunc
.
Kapitel 23: Praxis
für zwei
405