die_klasse_random
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
die_klasse_random [2024/01/20 08:00] – torsten.roehl | die_klasse_random [2024/01/20 08:07] (aktuell) – [Initialisierung des Zufallszahlengenerators] torsten.roehl | ||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
In diesem Abschnitt zeigen wir, wie man in Java gleich verteilte Zufallszahlen erzeugt. | In diesem Abschnitt zeigen wir, wie man in Java gleich verteilte Zufallszahlen erzeugt. | ||
<WRAP center round info 100%> | <WRAP center round info 100%> | ||
- | Zufall ist kompliziert! Das erzeugen von diesen Zufallszahlen geschieht nicht zufällig, sondern nach einer genauen Rechenvorschrift. | + | **Zufall ist kompliziert!**\\ Das erzeugen von diesen Zufallszahlen geschieht nicht zufällig, sondern nach einer genauen Rechenvorschrift. |
</ | </ | ||
- | ==== Erzeugen von ganzen Zufallszahlen | + | ==== Erzeugen von ganzen Zufallszahlen |
+ | Dieses Programm erzeugt mit gleicher Wahrscheinlichkeit eine 0,1 oder eine 2 und gibt sie aus. | ||
+ | <Code Java linenums:1> | ||
+ | import java.util.*; | ||
+ | | ||
+ | public static void main(String[] args) { | ||
+ | Random rnd = new Random(); | ||
+ | | ||
+ | System.out.print(" | ||
+ | } | ||
+ | } | ||
+ | </Code> | ||
+ | ==== Erzeugen von Gleitkomma-Zufallszahlen double ==== | ||
+ | Dieses Programm erzeugt mit gleicher Wahrscheinlichkeit eine Zahl zwischen **0** und **1** und gibt sie auf der Konsole aus.\\ Lassen Sie das Programm mehrmals laufen und schauen Sie sich die erzeugten Zufallszahlen an. | ||
+ | |||
+ | <Code Java linenums: | ||
+ | import java.util.*; | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | ====Initialisierung des Zufallszahlengenerators | ||
+ | Java erzeugt nicht nur eine Zufallszahl, | ||
+ | Der folgende Codeausschnitt erzeugt eine feste Sequenz von Zufallszahlen, | ||
+ | |||
+ | <Code Java linenums: | ||
+ | import java.util.*; | ||
+ | | ||
+ | | ||
+ | Random rnd = new Random(); | ||
+ | rnd.setSeed(12345); | ||
+ | for(int i = 0; i < 10; i++){ | ||
+ | | ||
+ | | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | <WRAP center round tip 100%> | ||
+ | Lese die Dokumentation der Methoden setSeed(), nextDouble() und nextInt(...) in der Java-API Dokumentatin nach. | ||
+ | </ | ||
+ | |||
+ | ==== Wie geht es weiter | ||
+ | |||
+ | Früher oder später werden Sie sich mit folgende Fragen auseinandersetzen müssen. | ||
+ | * Was sind gute Zufallszahlen? | ||
+ | * Wie bekommt man andere Bereiche oder Verteilungen? | ||
+ | |||
+ | |||
die_klasse_random.1705737621.txt.gz · Zuletzt geändert: 2024/01/20 08:00 von torsten.roehl