Zitat von
yankee:
Ich habe in einer variable x eine float-Zahl. Jetzt will ich einen Boolean-Zufall generieren und zwar so, dass je höher meine Zahl ist, je höher ist die Wahrscheinlichkeit true raus zu bekommen.
Also nach dem Prinzip, dass die Wahrscheinlichkeit true zu bekommen 1
ist.
Auch wenn der Thread schon etwas älter ist, was ich vorhin nicht bemerkt habe, versteh ich deine Aussage nicht. Mit x wachsend heisst 1/x ist fallend.
Dir fehlt hier definitiv eine Aussage, ab wann deine Zahl gross ist.
Die von Marabu gezeigte Lösung mag wohl zustimmen, aber wer mal mein Kapitel über Monte Carlo durchgelesen hat, kommt zu folgendem Ergebnis, mit xi eine Zufallszahl zwischen 0..1:
Code:
xi = Integral[0..x] (1/x dx)
= ln x
=> x = e^xi
Ich bin etwas verwirrt, was die Anfangsfragestellung angeht. Aber vielleicht kann das ja nochmals genauer dargestellt werden.