Thema: Delphi randomize problem

Einzelnen Beitrag anzeigen

Benutzerbild von isilive
isilive

Registriert seit: 15. Okt 2008
Ort: Österreich
192 Beiträge
 
Delphi 2009 Professional
 
#28

Re: randomize problem

  Alt 3. Nov 2009, 13:52
Wenn du ein Array für die Zahlen nimmst, kannst du sie der Reihe nach vergleichen.
Das hier ist nur Pseudocode...

Delphi-Quellcode:
array of integer deklarieren
For i := 1 to 6
  repeat
    array[i] = random ...
    flag := true;
    Gib j einen Startwert;
      while j>0 do
        begin
          if array[i] = array[j] then flag := false;
          mache j kleiner;
        end;
  until flag
Offtopic:
Was man ziemlich oft findet sind konstruktionen a'la:
Delphi-Quellcode:
a := random(49);
if a = 0 then
  a := random(49);
weiter ...
was aber nicht verhindert, dass beim zweiten mal die Zahl wieder 0 sein kann...

Folgenden Code hab ich mal gefunden:
Delphi-Quellcode:
If CheckBox1.checked Then // erst wird by ein zufälliger Wert gegeben
  by := RandRange(32, 128)
Else
  by := random(256);

While by = 0 Do // und dann nochmal verhindert, dass er 0 sein kann.
  If CheckBox1.checked Then
    by := RandRange(32, 128)
  Else
    by := random(256);
Aber wenn es spät in der Nacht schreiben wir alle manchmal so Zeugs, oder?
Stefan
Jedoch kann die referenzbasierte Implementierung des Standard-Objektmodells in Kombination mit den komplexen syntaktischen Dereferenzierungsregeln bei einer objektorientierten API wie ein Stolperstein wirken.
  Mit Zitat antworten Zitat