Einzelnen Beitrag anzeigen

anku

Registriert seit: 13. Sep 2003
51 Beiträge
 
#6

Re: Suchalgorithmus -> Ungültige Zeigeroperation

  Alt 21. Sep 2003, 12:47
Wenn du dir nicht sicher bist, welche Indizes du benutzen musst, dann ist es am einfachsten wenn du so was in der Art benutzt:
for i:=Low( Feld) to High( Feld) Low liefert den niedrigsten und High den Höchsten Index eines Arrays zurück.

Dein Source hat aber noch eine kleine Lücke, da man den Wert der Edits ja zwischen dem generieren und dem Suchen ändern kann. Also solltest du für den Suchdurchlauf die Anzahl der Einträge in deiner Liste abfragen:

Delphi-Quellcode:
procedure TForm1.BSuchenClick(Sender: TObject);
var Ergebnis, laenge : integer;
begin
laenge:= lb1.Items.Count; //strtoint(EEnde.text)-strtoint(EAnfang.text);
//function aufrufen, result in Ergebnis speichern
Ergebnis:=BinSuche(StrToInt(EKey.Text),laenge);
EErgebnis.text:=inttostr(Ergebnis);
end;
MfG
  Mit Zitat antworten Zitat