Da ich gerade auf das Ende eines Programmes warte, habe ich mir mal die verschiedenen Projekte angeschaut, die hier im Forum vorgestellt werden. Dieses Projekt hier finde ich nett, und ich dachte mir, wie ich eine Zufallsziehung programmieren würde. Nun ja, anbei das Ergebnis. Wer weiß, vielleicht bringt es ja Glück.
Hier die eigentliche Funktion
Delphi-Quellcode:
const
c_MaxZiehungen = 13983816;
type
Ziehung_array = array [1..7] of integer;
function Ziehung_generierien : Ziehung_array;
var
z1, z2, z3 ,
z4, z5, z6 ,
iAnz ,
iZiehung : integer;
hours ,
mins ,
secs ,
milliSecs : Word;
begin
DecodeTime(now, hours, mins, secs, milliSecs);
RandSeed := hours+mins+secs+milliSecs;
iZiehung := Random (c_MaxZiehungen)+1;
iAnz := 0;
for z1 := 1 to 44 do
for z2 := z1+1 to 45 do
for z3 := z2+1 to 46 do
for z4 := z3+1 to 47 do
for z5 := z4+1 to 48 do
for z6 := z5+1 to 49 do
begin
iAnz := succ (iAnz);
if iZiehung = iAnz then
begin
result [1] := z1;
result [2] := z2;
result [3] := z3;
result [4] := z4;
result [5] := z5;
result [6] := z6;
result [7] := iZiehung;
exit;
end; // if iZiehung = iAnz
end; // for z6 := z5+1 to 49 do
end; // function Ziehung_generierien : Ziehung_array;