Thema: Listbox

Einzelnen Beitrag anzeigen

Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#13

Re: Listbox

  Alt 13. Nov 2007, 09:27
Zitat von mimi:
Ich habe die Frage so verstanden der Erste Eintrag der einen ungeraden Wert Enthält das davon der Index gebraucht wird.
Wenn man es so sieht, dann braucht man aber die ersten n Index-Werte und nicht nur den ersten.

Zitat von mimi:
Delphi-Quellcode:
function findOdd(lb:TListbox):Integer;
var
  i,k,z:Integer;
begin
  z:=-1;
  for i:=0 to 400 do begin
    k:=StrToint(lb.items[i]);
    if odd(k) then begin z:=i; break;
  end;
  result:=z;
end;
Fix 400? Wofür gibt es Items.Count (Und k und z kann man sich auch sparen [jaja, da kommt wieder das Microcontroller-Programmier-Verhalten durch ])
Außerdem hast du ein begin geschrieben, aber kein end dazu

Mal etwas optimiert:
Delphi-Quellcode:
function FindFirstOdd(AList: TListBox): Integer;
begin
  For Result := 0 to AList.Items.Count - 1 do
    If Odd(StrToIntDef(AList.Items[Result], 0)) then Exit;
  Result := -1;
end;
Allerdings, will man wirklich die ersten n Ungraden aus der Liste, müsste man entweder einen Startwert übergeben und die Funktion in einer Schleife aufrufen, oder die Funktion komplett umschreiben ... je nach gewünschter Verwendung ^^
Chris
  Mit Zitat antworten Zitat