Diese Seite funktioniert am besten mit aktiviertem JavaScript!

Beschreibung: Zufallsgenerator - Teilmenge von Namen

Zufallsgenerator Teilmenge von Namen auswählen

Dieser Artikel beschreibt die Funktionsweise des Zufallsgenerators "Teilmenge von Namen". Es können bei diesem Generator verschiedene Namen eingegeben werden, wovon anschließend eine bestimmte Teilmenge davon zufällig ausgewählt wird. Damit kannst du beispielsweise ein Gewinnspiel auslosen oder sonstige Dinge eingeben, zwischen denen du dich nicht entscheiden kannst.

Zufallsgenerator "Teilmenge von Namen"

Zum nachfolgend beschriebenen Zufallsgenerator gelangst du hier.

Was ist Zufall?

Als Zufall bezeichnet man ein Ereignis, für das es keine kausale Erklärung gibt. Das bedeutet, dass das Ergebnis eines Zufallsgenerators nicht vorhersehbar bzw. berechenbar sein darf. Dies widerspricht jedoch den Gesetzmäßigkeiten eines jeden Computers, was im Umkehrschluss bedeutet, dass ein Computer ohne weitere Peripherie keine absolut zufälligen Zahlen erzeugen kann. Man spricht in diesem Fall von Pseudo-Zufallszahlen. Generell lässt sich darüber philosophieren, ab wann man tatsächlich von Zufall sprechen kann.

Wie werden die Namen ausgewählt?

Theoretisch werden in diesem Generator insgesamt drei verschiedene Mechanismen zur Erzeugung von Pseudo-Zufallszahlen eingesetzt, wobei zwei dieser Verfahren lediglich zur Generierung des Binärstrings im Hintergrund dienen.

Zufallsgenerator 1 und 2 für Binärstring

Die Funktionsweise dieser Zufallsgeneratoren wird hier erklärt.

Zufallsgenerator 3 für Auswahl der Namen

Die vorherigen Zufallsgeneratoren erzeugen einigermaßen gute Zufallszahlen, welche jedoch noch verbesserungsfähig sind. Die Erzeugung der Teilmenge erfolgt daher stets serverseitig durch die PHP-Funktion random_int(), welche kryptographisch sichere Pseudo-Zufallszahlen generiert:

1
2
3
4
5
6
7
8
9
10
11
// Das Array $namen enthält alle Namen

// Auswählen der Namen
for($i = 1; $i <= $anzahl_namen; $i++) {
	
	$index 		= random_int(0, count($namen)-1);
	$zufallsnamen[] = $namen[$index];
	unset($namen[$index]);			// Eintrag löschen
	$namen 		= array_values($namen);	// Reset indexes
	
}
Teile diese Seite
Erstellt am 21.12.2016 | Zuletzt geändert am 16.01.2018