Einzelnen Beitrag anzeigen

Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Doppelte Zahlen beim Lotto Generator

  Alt 31. Mär 2006, 15:20
Hi Solche Blöcke wie
Delphi-Quellcode:
 zahl[1]:=random(49)+1;
zahl[2]:=random(49)+1;
zahl[3]:=random(49)+1;
zahl[4]:=random(49)+1;
zahl[5]:=random(49)+1;
zahl[6]:=random(49)+1;
sollten eher über eine Schleife gemacht werden, also
Delphi-Quellcode:
for i:=1 to 6 do
zahl[i]:= random(49)+1;
Wenn du nicht willst, dass Zahlen doppelt sind, kannst du auch von Anfang an nur die Zahlen benutzen, die noch nicht vorkamen. Du könntest dir z.B. ein Set anlegen, in dem die Zahlen stehen, die schon gezogen wurden, etwa so:
Delphi-Quellcode:
var
list: set of Byte;
begin
list:=[];
for i:=1 to 6 do
begin
  repeat
  j:= random(49)+1;
  until not j in list;
zahl[i]:=j;
list:= list+[j]; // Das sollte man nicht vergessen... s.u.
end;

end;
Für die Ausgabe wird dir FindComponent helfen, damit ist die Ausgabe auch ein zweizeiler:
Delphi-Quellcode:
for i:=1 to 6 do
fincomponent('Panel'+inttostr(i)).caption:=inttostr(Zahl[i]); // Oder so ähnlich.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat