AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Wörter Sortieren im Array

Ein Thema von Rippo · begonnen am 27. Apr 2016 · letzter Beitrag vom 27. Apr 2016
Antwort Antwort
Rippo

Registriert seit: 10. Feb 2015
75 Beiträge
 
Delphi 10 Seattle Professional
 
#1

Wörter Sortieren im Array

  Alt 27. Apr 2016, 12:47
Hallo zusammen

ich möchte in meinem Array die wörter sortieren, jedoch bekomme ich ein fehlermeldung ---> zugriffsverletzung

Delphi-Quellcode:
Procedure SortWord(aWord : string; var aWord_Array : TStringArray);
var NewEintrag, i : Integer;
    Str : String;
    Check: Boolean;
  //wenn sortiert gespeichert werden soll
Begin
 Repeat
  Check:= False;
   i := 1;
    repeat
     if CompareStr(aWord_Array[i], aWord_Array[i+1])>0 then
      begin
       Str := aWord_Array[i];
       aWord_Array[i] := aWord_Array[i+1];
       aWord_Array[i+1] := Str;
       Check := TRUE;
      end;
      Inc(i);
    until(i>Length(aWord_Array));
 Until(Check=FALSE) ;
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: Wörter Sortieren im Array

  Alt 27. Apr 2016, 12:50
Indizes von dynamischen Arrays beginnen in Delphi normalerweise bei 0 und nicht bei 1. Außerdem ist deine Abbruchbedingung nicht korrekt, weshalb du eh schon immer ein Element zu viel liest.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

AW: Wörter Sortieren im Array

  Alt 27. Apr 2016, 12:50
Dein i+1 geht wahrscheinlich über die Arraygrenze.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Wörter Sortieren im Array

  Alt 27. Apr 2016, 12:59
Die untere und obere Grenze eines Arrays bekommt man mit Low( someArray ) und High( SomeArray ) heraus.

Dann kann sich das ändern wie es möchte und wird trotzdem immer passen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
39.684 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Wörter Sortieren im Array

  Alt 27. Apr 2016, 16:02
Pssst: TArray.Sort<T>(var Values: array of T); // Generics.Collections
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf