Hola de nuevo, te muestra el error porque StringReverse te devuelve un String y para comparar debes hacer la conversión a entero.
Código Delphi
[-]
Var
Numero : Integer;
begin
......
......
Numero := trunc(Int(A)) mod 4567;
if Numero= StrToInt(ReverseString(IntToStr(Numero))) then
showmessage('El numero es capicua')
else
showmessage('El numero no es capicua');
......
Como estas trabajando con números, no te sería mejor invertir el número, aquí te dejo la función para invertir números.
Código Delphi
[-]
function TForm1.InvertirNumero(Numero : Integer):Integer;
var
NumeroInvertido : Integer;
begin
NumeroInvertido := 0;
While (Numero>0) do
begin
NumeroInvertido := NumeroInvertido*10 + (Numero MOD 10);
Numero := Numero Div 10;
end;
result := NumeroInvertido;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Numero : Integer;
begin
Numero := trunc(Int(A)) mod 4567;
if Numero = InvertirNumero(Numero) then
showmessage('El numero es capicua')
else
showmessage('El numero no es capicua');
end;
Saluditos