Entwickler-Ecke

Algorithmen, Optimierung und Assembler - Cäsar Verschlüsselung


doenerali - So 11.12.05 12:35
Titel: Cäsar Verschlüsselung
Hallo,
muss dieses Programm morgen früh halb acht abgeben aber es funktioniet nicht. Kann jemand mal ein Blick drauf werfen. Es verschlüsselt jeweils nur den ersten Buchstaben des Wortes und der Rest wird einfach dran gehangen. Eventuell verlassen des Alphabets!

Ich danke euch!!!


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
const
  Buchstabe : Array[1..26of Char =
    ('A''B''C''D''E''F''G''H''I''J''K''L''M',
     'N''O''P''Q''R''S''T''U''V''W''X''Y''Z');

function decode(s: string; Anzahl: Integer): string;
var
  i: Integer;
begin
  // Anzahl darf nur zw. 1 und 25 sein !!!

  for i := 1 to Length(s) do
  begin // Für alle Buchstaben
    if UpCase(s[i]) in ['A'..Buchstabe[26 - Anzahl]] then
    begin // wenn es ein Buchstabe ist, der gefahrenlos verschoben werden kann
      Inc(s[i], Anzahl);  // Um Anzahl Zeichen nach rechts verschieben
    end
    else
    begin
      if UpCase(s[i]) in [Buchstabe[27 - Anzahl]..'Z'then
      begin // wenn es ein Buchstabe ist, der ncht so einfach verschoben werden kann
        Dec(s[i],26 - Anzahl); // Um 26 - anzahl Zeichen nach links verschieben
                               // bei Anzahl = 3 zB: X = A, Y = B, Z = C
      end;
    end;
  end;
  Result := s; // Verschlüsselten Text zurückgeben
end;


Moderiert von user profile iconGausi: Delphi-Tags hinzugefügt.


Blackheart666 - So 11.12.05 13:10

Gruss !
Habs mal Ausprobiert bei mir Funktionierts bei 3 wird aus abc - def und aus Test - Whvw.