Hallo und Willkommen in der
DP ,
schließe bitte künftig Quellcode in Delphi-Tags ein, dann ist er besser zu lesen. Zu Deinem Problem: ich sehe nicht, wo die "Verschiebungsweite" angegeben wird. Beim Caesar-Ciphre werden ja alle Zeichen um die gleiche Anzahl verschoben. Wenn ich das richtig gesehen habe, verschiebst Du hingegen jedes Zeichen um seinen Ordinalwert, das ist etwas völlig anderes.