Advertisement
Guest User

Untitled

a guest
Mar 1st, 2015
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. // Verschlüsseln
  2. procedure TForm1.VerschlButtonClick(Sender: TObject);
  3.  
  4. var geheim, klar, check, S:string;
  5. var laenge,i,p,Aklar:integer;
  6. var ageheim:integer;
  7.  
  8.  
  9.  
  10. begin
  11.  
  12. //Eingabe
  13. klar:=Memo1.text;
  14. memo2.clear;
  15. laenge:=length(klar);
  16.  
  17. //Zeichen Überprüfung
  18. check:=klar;
  19. check := UpperCase(Klar);
  20. check:= StringReplace(check,' ','',[rfReplaceAll]);
  21. for p := 1 to Length(check) do
  22. begin
  23. if not (check[p] in ['A'..'Z']) then
  24. begin
  25. ShowMessage('Der Text darf nur Klein- und Großbuchstaben enthalten. (keine Umlaute)');
  26. Memo1.Clear;
  27. Memo2.clear;
  28. break;
  29. end
  30. else
  31. begin
  32.  
  33. //Verschlüsselung wird gestartet
  34. for i:=1 to laenge do // Initialisieren der Schleife um die einzelnen Zeichen umzuwandeln
  35. begin
  36. aklar:=ord(klar[i]); // Umwandeln der Zeichen in Ordinalzahlen
  37.  
  38. case aklar of
  39. 32:ageheim:=32; // Leerzeichen bleibt erhalten
  40. 65:ageheim:=89; // Sonderfall für Buchstaben A
  41. 66:ageheim:=90; // Sonderfall für Buchstaben B
  42. 67..90:ageheim:=aklar-2; // Reihe der Buchstaben C bis Z
  43. 97:ageheim:=121; // Sonderfall für Buchstaben a
  44. 98:ageheim:=122; // Sonderfall für Buchstaben b
  45. 99..122:ageheim:=aklar-2; // Reihe der Buchstaben c bis z
  46. end;
  47.  
  48. //Ausgabe in Geheimschrift
  49. geheim:= chr(ageheim); //Umwandlung der Ordinalzahlen in Zeichen
  50. Memo2.text:=(geheim)+ (memo2.text) ; // Gespiegelte Ausgabe des Geheimtextes
  51.  
  52.  
  53. end;
  54. end;
  55. end;
  56. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement