Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Frage nach Zufallzahl ? Mit Quelcode.-----
aancall - Do 04.11.10 20:49
Titel: Frage nach Zufallzahl ? Mit Quelcode.-----
Bei der zufälligen Verteilung von Aktionspunkte, wird die Prozedur Jahr für Jahr
immer dieselbe Verteilung ausgeführt.
Frage: wie lässt sich die Verteilung jedes Mal(Jahr) anderes umsetzen, obwohl gleiche Aktionspunkte aufgeteilt werden.
Haben Sie ein Idee , wie soll ich mein Programm verändern ?
Delphi-Quelltext:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| var i1,i2,i3,i4,i5,i6,i7,i8,i9:Integer; i11,i22,i33,i44,i55:Integer; i,p:integer; begin p:=8;for i:=1 to 10 do begin randomize;i11:=random(p);i1:=i1 +i11; i22:=random(p-i11); i2:=i2 + i22; i33:=random(p-i11-i22);i3:=i3+i33; i44:=random(p-i11-i22-i33);i4:=i4 +i44; i55:=random(p-i11-i22-i33-i44);i5:=i5+i55; writeln(i11,' ',i22,' ',i33,' ',i44,' ',i55); end; readln end. |
Martok - Do 04.11.10 21:00
Hallo und :welcome: im Delphi-Forum!
Zuerst mal: es ist in Foren üblich dass man sich duzt...
Ich möchte dich bitten, für Quellcode die entsprechenden [delphi
]-Tags zu verwenden, dann wird er "schöner" dargestellt als im Fließtext. Beispiel:
Quelltext
1:
| <span class="inlineSyntax"><span class="codecomment">{PROTECTTAG922d5ce7f1f4785135d2ccc6afd517a5}</span></span> |
Wird:
Einfach oben bei Deinem ersten Beitrag auf

oder

klicken und ändern. Danke Dir!
Zur Frage: der Aufruf von Randomize in JEDEM Durchlauf ist so gar nicht gut. Verschieb diese Zeile am Besten vor die Schleife. Mehr seh ich bei diesen... schönen Variablennamen erstmal nicht.
Viele Grüße,
Martok
Bergmann89 - Fr 05.11.10 14:42
Hey,
was mir in deinem Code auffällt: du hast i1 bis i5 nicht initialisiert, das heißt es können irgendwelche Werte drin stehen und das verfälscht die natürlich die Berechnungnen.
Wenn du die Zufallsverteilung ändern willst musst du dir eine eigene Funktion schreiben, die die Verteilung so anpasst, wie du das willst. Und dann erstetzt du einfach die normale Random Methode durch deine eigene.
MfG Bergmann.
Bergmann89 - Fr 05.11.10 15:48
Hey,
in dem Thread geht es ausschließlich um randomize, ich wüsste nicht wie ihm das weiter helfen sollte :?!?:
MfG Bergmann
Teekeks - Fr 05.11.10 15:52
Insgesamt randomize nur ein einziges mal aufrufen.
buster - Fr 05.11.10 16:03
Bergmann89 hat folgendes geschrieben : |
Hey,
in dem Thread geht es ausschließlich um randomize, ich wüsste nicht wie ihm das weiter helfen sollte :?!?:
|
ähm... genau dafür ist doch randomize da, nämlich dass nicht jedesmal die selben random-Werte ausgegeben werden, oder irre ich mich da jetzt? Und das wollte er doch wissen (es sei denn, ich hab die Frage falsch verstanden).
Bergmann89 - Fr 05.11.10 16:05
Das randomize hat er doch drin (auch wenn mehr als 1 mal). So ganz verstanden hab ich ihn auch nicht, aber ich glaub er wollte die Verteilung der Zufallsfunktion ändern, un die is bei der normalen random-Funktion in etwas gleichverteilt...
buster - Fr 05.11.10 16:07
@Bergmann89: wenn du dir den Thread zu randomize mal durchliest, findest du raus, wo das Problem liegt ;) (da ist es halt etwas ausführlicher erläutert)
Bergmann89 - Fr 05.11.10 16:11
Hab ich, aber ich find in dem Thread nix zum eigentlichen Thema, außer das man randomize nur einmal benutzen sollte, un das hat
Martok ja schon gesagt. Oder ich hab grad Tomaten auf den Augen xD
aancall - Mo 08.11.10 02:20
für Alle , Sage ich mal danke schön
Das Problem habe ich erledigt.
Kai
Rupert - Mo 15.11.10 21:08
:beer:
Super und wie?
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!