Hola...
En el código de
seoane, la variable
J guarda el valor del último dígito, así que el único cambio que podrías hacerle para que funcione como esperas es:
Código Delphi
[-]
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
i,j,k: Integer;
begin
Writeln('Introduce la clave:');
Readln(i);
j := i mod 10;
i := i div 10; k := 0;
while i > 0 do
begin
inc(k, i mod 10);
i := i div 10
end;
if (k mod 10) = j then
Writeln('La clave es correcta')
else
Writeln('La clave no es correcta')
end.
Saludos...