Versión en Pascal del algoritmo de cifrado César, programada por mí.

program CesarCifrado;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  Alphabet: Array [0..25] of 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');
 
  NWord:String = '';
  Palabra: String;
  Clave:Integer;
 
function CifrarCesar(AString:String;AKey:Integer):String;
var
I,J,ALength,Temp,Tmp:Integer;
begin
  Result := '';
  AString := LowerCase(AString);
  ALength := Length(Alphabet);
  if (AKey >= 1) and (AKey <= 26) then     
    begin       
      for I := 0 to Length(AString) do         
        for J := 0 to ALength -1 do           
          if (AString[I] = Alphabet[J]) then             
            if J+AKey <= 26 then
              begin
                Temp := J+AKey;
                Tmp := Temp-26;
                NWord := NWord + Alphabet[Tmp]
              end else
                NWord := NWord + Alphabet[J+AKey];
    end;
 
  Result := NWord;
end;
 
begin
  try
    WriteLn('Escriba la palabra que desea cifrar > ');
    ReadLn(Palabra);
    WriteLn('Escriba la clave para codificar (entre 1 y 24) > ');
    ReadLn(Clave);
    Write('La palabra cifrada es: ',CifrarCesar(Palabra,Clave));
    ReadLn;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.