HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Véletlen szám generálás, mindig azonos sorozattal


Példaprogram letöltése

6635 bájt

Amikor a Random-al véletlen számokat generáltatunk, akkor ahányszor csak elindítjuk a programunkat, mindig ugyanabban a sorrendben kapjuk a véletlen számokat. Ezt elkerülendő használhatjuk a Randomize függvény hívást, mely az aktuális időpont alapján megkeveri kicsit a Random kezdőértékét, így mindig más és más számsorozathoz juthatunk.

Elképzelhető azonban az is, hogy pont arra van szükségünk, hogy mindig azonos sorozatokat kapjunk, de ezekből ne csak egyfélét, hanem tetszőleges számút. Ekkor nyilván az lenne a jó megoldás, hogy ha a Randomize-hez hasonlóan ne egy aktuális időpont alapján kapjon kezdő értéket a Random, hanem egy általunk megadott szám legyen a sorozat előállításának alapja.

Nos a Delphi-ben erre is van lehetőségünk.

Ehhez csak annyit kell tennünk, hogy a System unit-ban lévő RandSeed nevű integer típusú változónak egy tetszőleges értéket adjunk.

Ha az érték azonos, akkor a Random függvény is ugyanabban a sorrendben fogja a véletlen számokat generálni.
procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
begin
  RandSeed:=100;
  ListBox1.Items.Clear;
  for i:=0 to 9 do begin
    ListBox1.Items.Add(IntToStr(Random(10)));
  end;
end;


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2001 évkönyv 198. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |