Deutsches Simutransforum

Normale Version: Formel für Zahlengenerator
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
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
Einen Bestimmten Abfall?
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.
Also Praktisch eine "Gaus Kurve" in 2D?
Ja, genau. Smile
Das Ganze auf eine Fläche verteilt. Z.B. 32 mal 32 Segmente groß.
Muß mal erst i n meine Formelsammlungen gucken .... bin aber gleich offline. Also frühestens Mittwoch ...
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
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*
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.
Vielen Dank, Cruzer. Ich werd's heute Abend nach der Arbeit mal in der Praxis testen.
Seiten: 1 2