Computer
robinerdmann
5

Wie kann man "Zufall" programmieren? Ich hab mich shcon länger gewundert wie es möglich ist, besipielsweise bei einer "zufälligen Wiedergabe" von musiktiteln den "zufall" zu programmieren. muss der computer/mp3 player etc. nicht immer nach einem gewissen chemata auswählen?

+0
(8) Antworten
jochen1951

Wirkliche Zufallszahlen erhältst Du auf "www dot random dot org". In der Praxis wird meist die Lineare Kongruenzmethode verwendet, denn diese Zahlen verhalten sich in den meisten Anwendungen wie Zufallszahlen; sie sind zwar berechnet und daher niemals zufällig. Dabei werden zum Starten der Zufallssequenz meist "zufällige" Maßeinheiten des Betriebssystems genommen: Millisekundenanteil, Temperatur, Füllung der HD und dergleichen. Die Startzahl (auch seed genannt) ist im folgenden Link mit "x null" (x Index 0) bezeichnet: http://www.programmieraufgaben.ch/aufgabe/lineare-kongruenzmethode/qqrcbps2

Gloebtrotter

"Randomize" heißt das Zauberwort. Oder... Man nimmt ein Festes Datum. Zum Beispiel 01.01.1970, 00:00Uhr und lässt errechnen wieviele Sekunden von diesem Zeitpunkt bis zum jetzigen zeitpunkt vergangen sind und subrahiert von dieser Zahl dann abwechseln 2 dann 4 dann 6 dann 8 dann 10 dann 3 dann 6 dann 9 dann 12 dann 4 dann 8 dann 12 dann 14 dann 2 dann 4 dann 6 dann 8 dann 10 und so weiter bis man in einen Zahlenbereich kommt, indem man eine zufällige Zahl auswählen möchte. ^^ Das war nun nur vereinfacht dargestellt. Es gibt natürlich noch hunderte andere möglichkeiten einen zufälligen Wert zu erzeugen.

WilliamBerne

Völlig richtig erkannt, Zufall lässt sich gar nicht programmieren! Im Computer verwendet man nur Pseudozufallszahlen, die man auf der Grundlage von gewissen Zahlenfolgen erzeugt, die möglichst vielen statistischen Zufallstests genügen. Allerdings ist nichts daran "zufällig" - fängt man mit den selben Startwerten an, dann kommt immer die selbe Zahlenfolge raus. Ein einfaches Beispiel für einen Pseudozufallszahlengenerator ist z.B., wenn man eine beliebige Zahl > 1 als Startwert nimmt, sie mit sich selbst multipliziert, und jeweils nur die mittleren zwei (oder n) Ziffern als nächste Zahl nimmt. Diese ist dann eine weitere "Zufalls"zahl und die Eingabe für die nächste Runde.

Fuerstenstein

absolut korrekt, zufall lässt sich nicht programmiern. Es gibt allerdings verschiedene Algorithmen die Pseudozufallszahlen generieren. Manchmal werden sogar spannungs- oder Temperaturschwankungen der CPU gemessen und daraus eine Zufallszahl generiert

B7197

RND() Gibt in fast allen Programmiersprachen eine zufallsfunktion - die eine Zufällige Zahl ausspuckt. Aber - du hast recht: gewöhnliche Computer sind keine richtigen Zufallsgeneratoren - deswegen ist rein theoretisch dieser Zufall berechenbar. Es gibt auch richtige Zufallsgeneratoren die basieren auf komplexen physikalischen Aufbauten.

WHYB1986

Du kannst die Titel durchnummerieren und dann eine Zufallszahl bestimmen, und der Track wird dann gespielt.

Lausebengel74

Doch, daher wird das auch Pseudozufallszahl genannt: http://de.wikipedia.org/wiki/Pseudozufallszahlengenerator#Softwaretechnische_Realisierungen

Alexandrawinz

http://www-i1.informatik.rwth-aachen.de/~algorithmus/Algorithmen/algo38/algo38.pdf

Antwort hinzufügen