Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

Zufallsgenerator C++

KiLLa-T - 32
Champion (offline)

Dabei seit 06.2007
4586 Beiträge

Geschrieben am: 10.06.2012 um 15:22 Uhr
Zuletzt editiert am: 10.06.2012 um 15:39 Uhr

Guten Tag,

ich habe aus langeweile mal probiert einen Zufallsgenerator zu schreiben. Ich bin kein Profi, dass was ich kann sind bisher if Bedingungen, Schleifen und Arrays ..

Ich will die Zahlen 1-32 auf vier Parts aufteilen.
z. B. Part 1: 2, 7, 9, 14, 15, 22, 29, 32
und die restlichen Parts enthalten dann die ÜBRIGEN Zahlen, also es kommen keine Zahlen doppelt vor.

Es funktioniert auch alles einwandfrei, jedoch möchte ich jetzt von euch wissen, wie "gut" das Ergebnis ist.
Dazu habe ich ein Programm geschrieben, das nach jeder Vergabe der Zahlen den Durchschnitt berechnet. Z. B. wäre das bei dem Beispiel oben:
(2+7+9+14+15+22+29+32)/8 = 16.25

So .. das habe ich in eine Schleife gepackt und dann für jeden Part 50.000 mal laufen lassen. Die errechneten Durchschnitte addiert und durch 50.000 geteilt, so dass ich eine gesamten Durchschnitt bekomme.

Die Ergebnisse:
Part1 / Part2 / Part3 / Part4
17,6710 | 12,1430 | 16,7531 | 19,3615
13,7755 | 18,3095 | 16,6470 | 17,2680
14,3745 | 19,5665 | 16,3165 | 15,7426
18,0250 | 14,8750 | 15,9750 | 17,1250
14,7227 | 15,5889 | 16,7052 | 18,9832
17,4058 | 19,1730 | 14,8612 | 14,5601
16,9427 | 16,4717 | 16,6864 | 15,8992

So .. und jetzt zur eigentlichen Frage, sind das gute Werte??

Ich habe z. B. mal so lange rechnen lassen, bis in Part 1 acht Werte unter 15 sind. Nach 6.000.000 hatte ich noch kein Ergebnis.
Der666Diablo
Champion (offline)

Dabei seit 04.2006
23736 Beiträge

Geschrieben am: 10.06.2012 um 15:39 Uhr
Zuletzt editiert am: 10.06.2012 um 15:39 Uhr

lässt sich doch einfach überprüfen, auch c++ sollte eine rand() funktion haben, lass die 50.000 durchläufe da durchlaufen und vergleiche :-)

Bei Geld, Sex und Kunst gibt es keinen abnehmenden Grenznutzen. http://shortlinks.de/oee9

Mota - 36
Halbprofi (offline)

Dabei seit 02.2005
326 Beiträge
Geschrieben am: 10.06.2012 um 17:36 Uhr

Zitat von Der666Diablo:

lässt sich doch einfach überprüfen, auch c++ sollte eine rand() funktion haben, lass die 50.000 durchläufe da durchlaufen und vergleiche :-)

Mit der Funktion srand() den Zufallsgenerator initialisieren; anschließend kannst du mit rand() Zufallszahlen generieren.
Ketzu - 38
Experte (offline)

Dabei seit 11.2008
1535 Beiträge
Geschrieben am: 10.06.2012 um 18:46 Uhr

Es gibt unterschiedliche Gütekriterien von Zufallszahlen.
Nur eine davon ist Gleichverteilung.

wenn du einen bekannten Algorithmus für Zufallszahlen verwendest kannst du bei dem einfach seine Gütekriterien nachschauen.

Eine Meinung vertreten, heißt nicht sie zu teilen, sondern versuchen sie zu verstehen.

iLiKETRAiNS - 40
Halbprofi (offline)

Dabei seit 06.2009
176 Beiträge

Geschrieben am: 14.06.2012 um 13:38 Uhr

betrachtet man nur die mittelwerte der zufallsverteilungen lässt sich noch nicht die güte der zugrundeliegenden verteilung abschätzen.

je nach anforderung spielt statistik höherer ordnung hinein.

Intilligenz hat nicht nur mit der Schulbildung zu tun.

  [Antwort schreiben]

Forum / Bits und Bytes

(c) 1999 - 2025 team-ulm.de - all rights reserved - hosted by ibTEC Team-Ulm

- Presse - Blog - Historie - Partner - Nutzungsbedingungen - Datenschutzerklärung - Jugendschutz -