Deutsches Simutransforum
Formel für Zahlengenerator - Druckversion

+- Deutsches Simutransforum (https://simutrans-forum.de/mybb)
+-- Forum: Off Topic (https://simutrans-forum.de/mybb/forumdisplay.php?fid=55)
+--- Forum: Kunterbunt (https://simutrans-forum.de/mybb/forumdisplay.php?fid=56)
+--- Thema: Formel für Zahlengenerator (/showthread.php?tid=4800)

Seiten: 1 2


Formel für Zahlengenerator - Alexander Brose - 11-01-2010

Ich bin wirklich kein Mathe-Ass, deshalb frag' ich einfach mal euch:
  • Ich habe einen Bereich von z.B. 1 bis 6
  • Aus diesem Bereich soll sich der Computer eine Zahl herauspicken (via RANDOMIZE-Funktion)
  • Bei 1 soll diese Wahrscheinlichkeit am höchsten, bei 6 am niedrigsten sein (gleichmäßiger Abfall)
Könnt ihr mir unter die Arme greifen? Smile


RE: Formel für Zahlengenerator - wernieman - 11-01-2010

Einen Bestimmten Abfall?


RE: Formel für Zahlengenerator - Alexander Brose - 11-01-2010

Zitat:Original von wernieman
Einen Bestimmten Abfall?
Ich erkläre mal, was ich letztendlich möchte: Auf eine quadratische Fläche sollen Objekte herunterfallen. Diese sollen zufällig und stetig (also wie Regen) positioniert werden, allerdings sollen mehr Objekte in der Mitte herunterfallen, als am Rand. Am Ende müsste also ein hübscher Hügel entstanden sein.

Die Verteilung möchte ich im Zusammenhang mit einer zufällig generierten Zahl erreichen.


RE: Formel für Zahlengenerator - wernieman - 11-01-2010

Also Praktisch eine "Gaus Kurve" in 2D?


- Alexander Brose - 11-01-2010

Ja, genau. Smile
Das Ganze auf eine Fläche verteilt. Z.B. 32 mal 32 Segmente groß.


- wernieman - 11-01-2010

Muß mal erst i n meine Formelsammlungen gucken .... bin aber gleich offline. Also frühestens Mittwoch ...


- Alexander Brose - 11-01-2010

Zitat:Original von wernieman
Muß mal erst i n meine Formelsammlungen gucken .... bin aber gleich offline. Also frühestens Mittwoch ...
Kein Problem. Steht kein Zeitdruck dahinter. Wink


- Alexander Brose - 11-01-2010

Ein Tässchen Kaffee wirkt...

Ich brauche gar keine Formel.
Ich lasse einfach eine Zahl von 1 bis 15 generieren und frage selbige anschließend ab. Ich brauche die Wahrscheinlichkeit dann ja nur noch nach meinen Wünschen verteilen. Z.B.
  • 1 = Aktion 1 (6,6 %)
  • 2, 3 = Aktion 2 (13,4 %)
  • 4 - 6 = Aktion 3 (20 %)
  • 7 bis 10 = Aktion 4 (26,6 %)
  • 11 bis 15 = Aktion 5 (33,4 %)
Dies entspricht eigentlich schon meinen Wünschen.
Manchmal sieht man den Wald vor lauter Bäumen nicht mehr. *schäm*


- Cruzer - 11-01-2010

Bin selbst auch überhaupt kein Experte auf dem Gebiet, jedoch werd ich trotzdem meinen Lösungsvorschlag hier erklären. (Denke er es ist ganz brauchbar und auch du durch Pflichtschulwissen verständlich..)

Zuerst Mathematisch:

1.Logik:
Code:
Ausgabezahl = Höchstzahl² / Zufallszahl
2.Anwendung Zahlen von 10 bis 100 (z.B. auf TI-92):
Code:
n = round(100^2/randi(100))
Achtung: Die Zufallszahl rand() sollte jedoch nicht Null sein. eventuell anstatt "randi(100)", "randi(99) + 1" verwenden.

Möchte man lieber größere Zahlen mit höherer Wahrscheinlichkeit haben will, einfach den Kehrwert ( = ^-1 oder 1/n ) nehmen.

Nachtrag um 15:59: Kleine Warnung, wegen dividiert durch 0 hinzugefügt.


Kleines Anwendungs-Beispiel

n = 10^2 / rand:

~100 = 100 / 1
~50 = 100 / 2
~33 = 100 / 3
~25 = 100/4
~20 = 100/5
~17 = 100/6
~14 = 100/7
~13 = 100/8
~11 = 100/9
~10 = 100/10

Zu 50% kommt eine Zahl kleiner gleich 20 heraus.

Nachtrag um 16:10: Erklärung etwas umgeschrieben. Zur Einfachheit.


- Alexander Brose - 11-01-2010

Vielen Dank, Cruzer. Ich werd's heute Abend nach der Arbeit mal in der Praxis testen.