![]() |
Zahlen verteilen
Nabend.
Ich bräuchte mal wieder einen kleinen Denkanstoß, und zwar: Ich habe eine beliebig lange Liste mit ungeordnet Zahlen. Diese Zahlen sollen nun verteilt werden, und zwar auf weitere Listen. Dazu bestimme ich erstmal
Delphi-Quellcode:
, also die maximale Anzahl der Zahlen pro neue Liste.
const MaxZahlen = 10;
Und hier den Code, den ich bisher habe:
Delphi-Quellcode:
Memo0: Hier stehen die Zahlen, die verteilt werden sollen.
procedure TForm1.Button1Click(Sender: TObject);
var i,j: integer; begin for i := 1 to Ceil(Memo0.Lines.Count / MaxZahlen) do begin for j := i*MaxZahlen-MaxZahlen to i*MaxZahlen-1 do TMemo(FindComponent('Memo'+IntToStr(i))).Lines.Add(Memo0.Lines[j]); end; end; Memo1-x: Hier werden die Zahlen reingesteckt. 1. Frage: Bei z.B. 14 Zahlen in Memo0 werden die ersten 10 Zahlen in Memo1 geschrieben, die Zahlen 11-14 werden ins Memo2 geschickt, aber zusätzlich noch 6 weitere Leerzeilen. Wie kann ich das verhindern? 2. Frage: Gibt es eine bessere (effizientere) Methode, die Zahlen zu verteilen? Anmerkung: Das mit den Memos hab ich nur zum Testen des Ganzen gebaut, damit ich besser überprüfen kann, was passiert. ;) Danke schonmal. :-D kumpel |
Re: Zahlen verteilen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,j: integer; begin for i := 0 to (Memo0.Lines.Count - 1) Div MaxZahlen do begin for j := 1 to Min(MaxZahlen, (Memo.Lines.Count) mod maxzahlen) do TMemo(FindComponent('Memo'+IntToStr(j))).Lines.Add(Memo0.Lines[i*Maxzahlen+j]); end; end; |
Re: Zahlen verteilen
Liste der Anhänge anzeigen (Anzahl: 2)
Hui, das ging schnell, danke.
Aber leider ists nicht das, was ich brauche. :( Hab mal zwei Bilder angehängt. |
Re: Zahlen verteilen
Zitat:
|
Re: Zahlen verteilen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,j: integer; begin for i := 1 to (Memo.Lines.Count Div MaxZahlen)+1 do begin for j := 0 to Min( MaxZahlen, Memo.Lines.Count - (i-1) * MaxZahlen )-1 do (FindComponent('Memo'+IntToStr(i)) as TMemo).Lines.Add(Memo.Lines[(i-1)*Maxzahlen+j]); end; end; |
Re: Zahlen verteilen
Zitat:
@ mkinzler: Danke, das funktioniert perfekt. :spin: |
Re: Zahlen verteilen
Zitat:
|
Re: Zahlen verteilen
Kann auch an mir gelegen haben, mkinzler hatte es ja auch erst falsch verstanden. :roteyes:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz