Erste Schritte nextGaussian zwischen zwei Werten

ungenau

Mitglied
Hallo, ich komme gerade nicht weiter... Ich suche eine Methode, die einen nextGaussian-Wert zum Beispiel zwischen 5 und 10 zurückgibt, mit einem Schwerpunkt bei 7,5. Das ist mein Ansatz dafür:

Java:
public static double getRandomDouble(double from, double to, double a) {
    return (new Random().nextGaussian() + 1.0) / 2.0 * (to - from) * a + from;
}

System.out.println(getRandomDouble(5, 10, 1));

Aber es kommen auch manchmal Werte <5 oder >10 dabei heraus. Wo ist mein Denkfehler? Außerdem möchte ich mit dem a-Parameter die Kurve nach oben ziehen wenn >0.5 oder "quetschen" wenn <0.5... Vielen Dank fürs Lesen.
 

fhoffmann

Top Contributor
Eine normalverteilte Variable kann Werte zwischen minus Unendlich und plus Unendlich haben. Du kannst sie nicht auf ein Intervall beschränken!
 
M

Mart

Gast
hast du dein new Random beschränkt ?

wenn zb dieser wert raus kommt hast du folgendes :
von 5 bis 10 und to 1
-0,6 / 10 + 5 = irgendwas kleiner als 5


du hast keinerlei beschränkung zb dass nur positive zahlen raus kommen können ... oder betrachtest den fall wenn from oder to negativ sind

EDIT: eig -1.6 aber ist da auch schon wurscht
 
Zuletzt bearbeitet von einem Moderator:
M

Mart

Gast

wenn hier der zweite wert raus kommt also 1.5
und du mit (5 , 6 ,1) startest kommst du auf das
2.5 / 2 + 5 = 6,irgendwas

es passt so noch nicht
und es wurden nicht mal die dümmsten werte gewählt die so möglich sind
 

fhoffmann

Top Contributor
Das hat überhaupt nichts mit meiner Frage zu tun.
Doch, es hat etwas mit deiner Frage zu tun: Es geht in beiden Fällen um den Versuch, eine Gauss-verteilte Variable zu beschränken (im beschriebnen Thread auf positive Zahlen, bei dir auf ein Intervall).

Was soll das denn bedeuten:
Zufallszahl mit Häufung in Intervall...
Eine "Häufung" im Intervall [5,10] hast du doch schon, nur dass nicht alle Werte in diesem Intervall liegen.
 

ungenau

Mitglied
Eine "Häufung" im Intervall [5,10] hast du doch schon, nur dass nicht alle Werte in diesem Intervall liegen.
Soll ich außerhalbliegende Werte droppen? Gibts da nicht was adäquates?

Doch, es hat etwas mit deiner Frage zu tun: Es geht in beiden Fällen um den Versuch, eine Gauss-verteilte Variable zu beschränken (im beschriebnen Thread auf positive Zahlen, bei dir auf ein Intervall).
Wenn ich das richtig sehe, ist die Methode bereits auf den positiven und negativen double-Wertebereich beschränkt...

@Mart Ich versteh leider gar nicht was sagst oder sagen möchtest.
 
M

Mart

Gast
ich habe 2 Websiten gezeigt die für newRandom().nextGaussian was raus bekommen haben (weil ich zu faul war es selbst zu tun)

dann hab ih deine formel mit deinen Werten und den Ergebnissen deines Aufraufs das Ausgerechnet und habe dir gezeigt warum etwas das höher als to ist raus kommen kann
und gezeigt dass etwas kleiner als to raus kommen kann
 

ungenau

Mitglied
Doch, in dem Thread wird auch Deine Frage behandelt, Du musst ihn nur weit genug verfolgen. Weiter unten findest Du dann auch Code dazu (z. B. https://www.java-forum.org/thema/mit-nextgaussian-positive-zahlen-erzeugen.185076/#post-1186821).
Also doch droppen. Kann man das dann nicht einfach antworten, anstatt mich auf einen Thread zu verweisen, in dem es primär um etwas anderes geht? Der Tonfall von temi ist zudem mehr als unangemessen.

Weiterhin ist die Implementierung von dem mrBrown ja furchtbar.
 

mihe7

Top Contributor
Also doch droppen. Kann man das dann nicht einfach antworten, anstatt mich auf einen Thread zu verweisen, in dem es primär um etwas anderes geht? Der Tonfall von temi ist zudem mehr als unangemessen.
Da der positive Wertebereich von double auch nur ein Intervall ist, sehe ich da jetzt keinen großen Unterschied. Was stört Dich denn am Tonfall von @temi? Der wird es auswendig auch nicht mehr gewusst haben, hat sich aber an einen zwei Jahre alten Thread erinnert und Dir den auch noch rausgesucht.

Weiterhin ist die Implementierung von dem mrBrown ja furchtbar.
Die Implementierung von @mrBrown dürfte wenigstens funktionieren, auch wenn er es nicht so mit Obfuscation hat.
 
M

Mart

Gast
Weiterhin ist die Implementierung von dem mrBrown ja furchtbar.
Was ist denn furchtbar daran bzw was würdest du anders machen?


Ausserdem muss man sagen dass deine Frage war wo dein Denkfehler liegt... ich habe dir gezeigt warum die Formel nicht funktioniert mehr wolltest du doch gar nicht
 
K

kneitzel

Gast
Aber das Beispiel von gutem Code zeigt, dass Java einfach schlecht ist. In Java kann man keinen guten Code schreiben!

Es fehlt ganz deutlich etwas wie:
Java:
import java.lang.IllegalArgumentException as IAE;
import java.util.Ramdom as R;

Nur so kann man dann den guten kurzen Code schreiben wie z.B.:
R r = new R();
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Mit nextGaussian() positive Zahlen erzeugen? Java Basics - Anfänger-Themen 39
K nextGaussian und Standardabweichung Java Basics - Anfänger-Themen 2
A Kleines GIT-Verständnisproblem zwischen zwei Rechnern Java Basics - Anfänger-Themen 6
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 9
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
S Unterschied zwischen Denkweisen Java Basics - Anfänger-Themen 13
O Klassen Zusammenspiel zwischen 2 Klassen Java Basics - Anfänger-Themen 1
Ras Unterschied zwischen parser xml and api xml Java Basics - Anfänger-Themen 7
X Was ist der Unterschied zwischen materialisierten und nichtmaterialisierten Attributen einer Klasse? Java Basics - Anfänger-Themen 1
F Abstand zwischen zwei Objekten berechnen wie? Java Basics - Anfänger-Themen 1
S Längster Pfad zwischen zwei Vertices in einem Graph Java Basics - Anfänger-Themen 3
jhCDtGVjcZGcfzug Was ist der Unterschied zwischen diesen Quellcodes? Java Basics - Anfänger-Themen 3
rafi072001 Assoziation zwischen Musiker und Label Java Basics - Anfänger-Themen 1
I Best Practice Saubere Verbindung zwischen API und Business Layer mit DTO's Java Basics - Anfänger-Themen 2
A Parametar übergabe zwischen Methoden Java Basics - Anfänger-Themen 26
W User zwischen Optionen wählen lassen Java Basics - Anfänger-Themen 1
I Differenz zwischen LocalDateTime Java Basics - Anfänger-Themen 4
Leo_1789 Differenz ausrechnen zwischen denn idealgewicht und denn echten Gewicht Java Basics - Anfänger-Themen 7
E Wie gebe ich alle Daten zwischen zwei Zeitpunkten aus? Java Basics - Anfänger-Themen 2
P Methode die ausgibt wie viele Primzahlen es zwischen 2 und n gibt Java Basics - Anfänger-Themen 10
C Kommunikation zwischen 2 Klassen Java Basics - Anfänger-Themen 3
marcooooo Separator zwischen allen Zeichen eines Strings einfügen Java Basics - Anfänger-Themen 29
NeoLexx Zuweisungskompatibilität zwischen Vererbungsbeziehungen (Polymorphie) Java Basics - Anfänger-Themen 18
L Threads Synchronisierung zwischen threads Java Basics - Anfänger-Themen 4
N Berührung zwischen Rechtecken Java Basics - Anfänger-Themen 5
Y Unterschied zwischen WindowBuilder und herkömmlichen erstellen des GUI´s? Java Basics - Anfänger-Themen 9
J Wert zwischen JFrames übergeben Java Basics - Anfänger-Themen 2
U Worin besteht der Unterschied zwischen call by reference und call by value? Java Basics - Anfänger-Themen 14
E Unterschied zwischen new und import Java Basics - Anfänger-Themen 5
J Punkt auf,über,unter oder zwischen 2 Geraden Java Basics - Anfänger-Themen 14
A Kommunikation zwischen nebenläufigen Threads Java Basics - Anfänger-Themen 4
B Unterschied zwischen (List<T> a) und (T[] a) Java Basics - Anfänger-Themen 7
Dilara_K Abstand zwischen den Doppelwerten in einem Array herausfinden Java Basics - Anfänger-Themen 20
S Nach dem Herüberschieben eines Arrays zwischen 2 Frames öffnet sich das Frame nicht mehr Java Basics - Anfänger-Themen 12
D Zufallszahl zwischen 10 und 99? Java Basics - Anfänger-Themen 5
J Objektzugriff zwischen disjunkten Klassen Java Basics - Anfänger-Themen 1
L Den Winkel zwischen zwei Vektoren berechnen! Java Basics - Anfänger-Themen 2
A Methoden Unterscheid zwischen public und ohne Java Basics - Anfänger-Themen 9
X Input/Output Höchste Temperaturschwankung zwischen 2 Tagen Java Basics - Anfänger-Themen 2
Bluedaishi der Monat zwischen zwei Datumsangaben Java Basics - Anfänger-Themen 15
R Threads Pause zwischen zwei Schleifen Java Basics - Anfänger-Themen 1
Aprendiendo Unterschied zwischen Referenzvariable und Instanzvariable. Java Basics - Anfänger-Themen 2
N Unterschied zwischen Checked und Unchecked Exceptions Java Basics - Anfänger-Themen 12
S Parameterübergabe zwischen zwei Programme Java Basics - Anfänger-Themen 4
S Erste Schritte Zwischen zwei Punkten ein Minimumpkt./Maxima finden Java Basics - Anfänger-Themen 1
K Klassen Array zwischen Klassen übergeben Java Basics - Anfänger-Themen 2
Arif OOP Die Bindung zwischen einem äußeren und einem inneren Objekt Java Basics - Anfänger-Themen 2
schoenosrockos Unterschied zwischen Objekten und vererbungen Java Basics - Anfänger-Themen 1
S OOP Variablen zwischen mehreren Klassen Java Basics - Anfänger-Themen 11
H Klassen Konstruktor Parameter als Instanzvariablen zwischen speichern... Java Basics - Anfänger-Themen 11
F Klassen Kommunikation zwischen Klassen Java Basics - Anfänger-Themen 4
J Variablen Unterschied zwischen lokalen-, Instanz-, Klassenvariablen Java Basics - Anfänger-Themen 6
N Dauer zwischen zwei LocalDateTime Objekten berechnen? Java Basics - Anfänger-Themen 4
P Ungerade Zahlen ausgeben lassen zwischen Spannweite zweier eingegeben zahlen Java Basics - Anfänger-Themen 6
V Zufallswert zwischen zwei Zahlen a und b Java Basics - Anfänger-Themen 12
H Datentypen Tage zwischen zwei Datums berechnen Java Basics - Anfänger-Themen 4
M Variable zwischen Klassen übergeben Java Basics - Anfänger-Themen 5
A attach source: Zusammenhang zwischen JAR und .class/.java Dateien? Java Basics - Anfänger-Themen 2
L Unterschied zwischen Klassen - und Instanzvarbiablen Java Basics - Anfänger-Themen 1
F Vererbung von Attributen zwischen zwei Klassen Java Basics - Anfänger-Themen 6
F Referenzen zwischen Methoden Java Basics - Anfänger-Themen 5
B Distanz zwischen zwei Punkten Java Basics - Anfänger-Themen 4
D Suche nach der Anzahl von Zonen zwischen zwei Punkten Java Basics - Anfänger-Themen 2
G Zugriff zwischen Klassen Java Basics - Anfänger-Themen 15
S Funktion die mir fuer einen String eine Zahl zwischen 0.0 und 1.0 zurueckliefert..? Java Basics - Anfänger-Themen 9
S Unterschiede zwischen equals und contains Java Basics - Anfänger-Themen 2
S Leerzeichen zwischen zwei Zeichen im String entfernen Java Basics - Anfänger-Themen 19
N Werte zwischen Klassen austauschen Java Basics - Anfänger-Themen 1
M Unterschied zwischen Classpath eines Eclipse Projektes und dem CLASSPATH? Java Basics - Anfänger-Themen 3
Thallius Best Practice Events zwischen eigenen Klassen Java Basics - Anfänger-Themen 2
A if-Anweisung zwischen zwei Punkten Java Basics - Anfänger-Themen 1
S Erste Schritte TAB-Wechsel zwischen TextFields Java Basics - Anfänger-Themen 1
B Relativer Pfad zwischen zwei Files Java Basics - Anfänger-Themen 2
M Drag & Drop - Interaktion zwischen Java und dem OS Java Basics - Anfänger-Themen 1
S Erste Schritte Tage zwischen 2 Daten berechnen Java Basics - Anfänger-Themen 6
Z Differenz zwischen 2 Daten berechnen, ohne importiere Funktionen! Java Basics - Anfänger-Themen 10
A Datum zwischen zwei Daten berechnen und in Tagen anzeigen Java Basics - Anfänger-Themen 4
D Unterschied zwischen double und Double Java Basics - Anfänger-Themen 4
Q Unterschied zwischen static und keinem Modifier Java Basics - Anfänger-Themen 15
K Unterschied zwischen Jar, war und ear Dateien Java Basics - Anfänger-Themen 3
S Problem bei Kollision zwischen Array-objekten! Java Basics - Anfänger-Themen 2
M Länge der Strecke zwischen zwei Punkten Java Basics - Anfänger-Themen 10
T Unterschied zwischen Integrationstest und JUnit test? Java Basics - Anfänger-Themen 12
T zwischen den Strings soll ein plus(+) stehen Java Basics - Anfänger-Themen 5
S Methoden Tage zwischen 2 Daten Java Basics - Anfänger-Themen 19
M Typcasting zwischen ganzen Zahlen Java Basics - Anfänger-Themen 7
K Unterschied zwischen break und continue in einer Schleife Java Basics - Anfänger-Themen 14
A Exakte Unterschied zwischen Java EE und Java SE? Java Basics - Anfänger-Themen 4
J Unterschied zwischen statische und nicht statische Methoden? Java Basics - Anfänger-Themen 14
N Winckel zwischen zwei Punkten Java Basics - Anfänger-Themen 9
O Java unterschied zwischen Interface und Interface_Referenzen!!?? Java Basics - Anfänger-Themen 7
J Regex um Inhalte zwischen Tags zu ignorieren Java Basics - Anfänger-Themen 2
F Info zwischen verschiedene Klassen austauschen Java Basics - Anfänger-Themen 4
W Variablen zwischen Klassen übertragen Java Basics - Anfänger-Themen 8
jueki Präzision bei Typumwandlung zwischen double und String Java Basics - Anfänger-Themen 14
B Text zwischen geschweiften klammern Java Basics - Anfänger-Themen 11
T Abstand zwischen zwei Zeitstempeln errechnen. Java Basics - Anfänger-Themen 3
c_sidi90 Zeitberechnung zwischen 2 Daten und Zeitangaben Java Basics - Anfänger-Themen 9
E Inhalt zwischen zwei String auslesen? Java Basics - Anfänger-Themen 8
Mikescher Winkel zwischen 2 Punkten und der X-Achse Java Basics - Anfänger-Themen 11

Ähnliche Java Themen


Oben