Einzelnen Beitrag anzeigen

qwertz543221
(Gast)

n/a Beiträge
 
#14

Re: LZW Komprimierung für texte - zugriffsverletzung

  Alt 24. Aug 2009, 20:57
die variable b ist nur lokal für bubblesort - den hab cih einfach so geschireben, brauche ich durch qs jedoch nicht
Delphi-Quellcode:
procedure tform1.bubblesort;

var i,a,b,c:longint; //hier ist b doch deklariert
begin

i:=0;
while i<length(ar) do

begin
a:=ar[i];
b:=ar[i+1]; //und bekommt hier einen wert zugewiesen, um den tausch zu vollziehen

if a<=b
  then i:=i+1
    else
    begin
{tauschen}
    c:=a;
    a:=b;
    b:=c;
//neu zuweisen
    ar[i]:=a;
    ar[i+1]:=b;
    i:=i+1;
    end;

end;
i:=1;
while i<length(ar) do

begin
if ar[i-1]<=ar[i]
  then i:=i+1
    else bubblesort;
 end;

 i:=0;
 memo1.Clear;
 end;

im moment reicht die funtion mit dem array - ich hatte bereits versucht das array als parameter zu übergeben, damit ich beliebige array sortieren könnte, doch das hat die funtkion (umgeschirben) nicht gemocht. ich denke jedoch dass das nicht unbedingt notwendig ist - vlt später einmal


Zitat:
Was soll das? Willst Du da noch mal tauschen und hast eine Zeile vergessen? Lassen wird uns also nicht ablenken und drücken Run. Und bumm!

Range Check error in Zeile
repeat j := j-1 until pivot >= ar[j];

Was kann das wohl sein. Und wieso tritt das auf
wenn ich den code jetzt ausführe passiert nichts besonderes - er gibt das sortierte array ordnungsgemäß aus - geändert habe ich nichts
  Mit Zitat antworten Zitat