Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Random Funktion -- Wahrscheinlichkeiten manipulieren
muzy - So 14.09.08 13:50
Titel: Random Funktion -- Wahrscheinlichkeiten manipulieren
Hallo,
ich brauch eine Random Funktion, die einigen Dingen eine Höhere Wahrscheinlichkeit zuordnet.
Das brauch ich für eine Verkehrssimulation die ich erstellen soll in der Schule.
Ich möchte dort bestimmte Fahrzeugtypen einbinden, jedoch wäre es unsinnig wenn spezielle Fahrzeuge (Krankenwagen usw) die gleiche Wahrscheinlichkeit haben wie normale Autos. Deswegen wollte ich fragen ob man da vlt irgendwie eine Möglichkeit hat, die Wahrscheinlichkeit zu ändern.
Sebastian aka muzy
Yogu - So 14.09.08 13:55
Du könntest Bereiche für die einzelnen Autotypen festlegen.
Ein Beispiel: Krankenwagen: 0-2; Polizeiauto: 3; LKW: 4-8; Normaler PKW: 8-19.
Dann lässt du dir eine zufällige Zahl zwischen 0 und 19 anzeigen (
Random(20)), und prüfst in einer
case-Abfrage, in welchem Bereich die Zahl liegt. Also:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| Zahl := Random(19);
case Zahl of 0..2: ; 3: ; 4..8: ; 8..19: ; end; |
Wenn du die Zahl per
Random(100) generieren lässt, kannst du sogar mit Prozentzahlen arbeiten. :idea:
muzy - So 14.09.08 14:57
Vielen Dank,
kann man denn in die case sachen auch sowas wie begin und end einfügen ?
nagel - So 14.09.08 15:04
Ja.
Hättest du aber auch einfach ausprobieren können :D .
Jakob_Ullmann - So 14.09.08 15:47
Brauchst du aber afaik nicht, da der Code zwischen case: und dem nächsten case sowieso als Block betrachtet wird.
elundril - So 14.09.08 15:58
Jakob_Ullmann hat folgendes geschrieben: |
| Brauchst du aber afaik nicht, da der Code zwischen case: und dem nächsten case sowieso als Block betrachtet wird. |
er meint bei den zahlen (2: ; 3: ; usw...) und bei denen braucht man, zumindest bei D7 doch noch ein Begin und ein end.
muzy - So 14.09.08 16:59
Also wäre dies hier:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| case Zahl of
1:
begin BLABLA end;
2:
.... |
Möglich, oder nicht?
elundril - So 14.09.08 17:00
möglich und imho sogar notwendig!
lg elundril
muzy - So 14.09.08 17:01
super, dann habe ich das Prinzip jetzt verstanden und kann es umsetzen - super =)
Danke =)
Sebastian
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!