Hi Spirius,
Deine anfängliches Problem war ja, wie verteile ich 100 zahlen in 4 gleichgroße Portionen.
Hat mich irgendwie angespornt. Um keine doppelten Zahlen zu erhalten, ist mir da auch eine Lösung
eingefallen. Werde mal mein Gedankengut verschütten, auch wenn Du ja selbst schon eine Lösung hast.
Ist 'ne visuelle Darstellung mit 4 Memos (memo1 bis memo4) und ein Button
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i,z,n:integer;
sl:TStringList;
begin
z:=0;
randomize; //besser nur 1mal im Form.Create
sl:=TStringList.Create;
sl.Sorted:=True; //nötig, damit nächste Zeile funktioniert
sl.Duplicates:=dupIgnore; //keine doppelten Zahlen
for i:=1 to 4 do
TMemo(FindComponent('memo' + IntToStr(i))).Clear;
try
while sl.Count<100 do //solange, bis alle 100 Zahlen mal dran waren
for i:=1 to 4 do
begin
n:=sl.Count; //aktuelle Zahlenmenge merken
while sl.Count=n do //solange probieren bis neue Zahl ermittelt wurde
begin
z:=round(random(100)+1);
sl.Add(intToStr(z));
end;
TMemo(FindComponent('memo' + IntToStr(i))).Lines.Add(intToStr(z));
end;
finally
sl.Free;
end;
end;
Gruß Lantis