Einzelnen Beitrag anzeigen

Maximus

Registriert seit: 26. Okt 2003
169 Beiträge
 
#19

Re: ganz einfache Verschlüsselung von einem Memo Text

  Alt 20. Nov 2005, 14:28
Hallo,

Da mich das jetzt doch brennend interessiert hat, hab ich jetzt meine Version nochmals überarbeitet und einige Kleingkeiten, die in diesem Thread angesprochen wurden beseitigt.


Delphi-Quellcode:
function Verschluessle(Text: String) : String;

var
 Key: array[1..3] of String = ('ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz', '0123456789');

{ ... }

function Verschluessle(Text: String) : String;
var i, j, k: Integer;
begin
 Result := ''; //Ergebniss zurücksetzen

 for i := 1 to length(Text) do //Jeden Buchstaben des Textes durchgehen
 begin
   for j := 1 to 3 do //Jeden Schlüssel durchgehen
   begin
     for k := 1 to length(Key[j]) do
     begin
       if Text[i] = Key[j][k] then
       begin
         if not (k+1 > length(Key[j])) then //Überprüfen ob man schon ebim letzten Buchstaben ist
          Result := Result + Key[j][k+1]
         else
          Result := Result + Key[j][1];
       end;
     end;
   end;
   if Text[i] = ' then //If Bedingung weglassen wenn man keine Leerstellen will.
    Result := Result + ' ';
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 Memo1.Lines.Text := Verschluessle(Memo1.Lines.Text); //Möglicher aufruf der Funktion
end;
Gelöst hab ich das mit dem z zu A, Z zu 1, das ich 3 unterschiedliche Schlüssel nehme, bzw. für jede Gruppe ein eigenen.
Und wenn man am Ende vom der "Schlüsselgruppe" ankommt wird man einfacher wieder nach vorne gesetzt. (Stichwort: If-Abfrage)

[Edit1] Hups kleiner Denkfehler drin. Das mit den Leerstellen muss ich doch jetzt nocheinmal testen ..
[Edit2] So nun bleiben die Leerstellen erhalten ...

MFG
Maximus
  Mit Zitat antworten Zitat