Thema: Transposition

Einzelnen Beitrag anzeigen

foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#1

Transposition

  Alt 2. Sep 2011, 19:58
Delphi-Version: 5
Delphi-Quellcode:
function Transp(w,s:string):string;
var sA:array of array of string;
    xw:string;
    Laenge, yw,i,z,x:integer;
begin
  setlength(sA,length(s), 2);
  for i:= 1 to length(s) do begin
    sA[i,1]:=s[i];
    sA[i,2]:=IntToStr(i);
  end;
  for i:= 1 to length(s) do begin
    x:=i;
    for z := i to length(s) do
        if (ord(StrToInt(sA[x,1])))>(ord(StrToInt(sA[z,1]))) then x:=z;
    xw:=sA[x,1];
    yw:=StrToInt(sA[x,2]);
    sA[x,1]:=sA[i,1];
    sA[x,2]:=sA[i,2];
    sA[i,1]:=xw;
    sA[i,2]:=IntToStr(yw);
  end;//Sortierung und Nummerierung des Schlüssels
  Laenge:=ceil(length(w)/length(s));
  x:=StrToInt(sA[1,2]);
  z:=1;
  for i := 1 to Laenge do begin
    if x>length(w) then
    begin
      inc(z);
      x:=StrToInt(sA[z,2])
    end;
    Transp:=Transp+w[x];
    x:=x+length(s)
  end;
end;//Transpositionsverfahren
Ich bekomme immer so einen blöden Prozessorfehler (SIGSEGV), könnt ihr mir vllt. helfen? Ich meine da sonst keine Fehler auftreten ist es mit solch einer indirekten Fehlermeldung relativ schwierig umzugehen.
mfg
foerster7892
  Mit Zitat antworten Zitat