[ Foro de Pascal ]

Error en function

14-Jun-2022 03:51
Invitado (Sol)
0 Respuestas

Tengo que analizar si un numero es capicua o no invocando a una funcion (en la que esta el algoritmo para obtener el numero inverso). El problema que tengo es que cuando realizo el if siempre me dice que el numero es capicua, el numero inverso el programa lo calcula bien, lo compruebo cuando hago que muestre en pantalla (inversion(n1)), entonces no se que esta mal. También me da una advertencia que dice: function result does not seem to set, entiendo que significa algo de que el resultado no esta configurado pero no se como resolverlo.

program capicua;

var
n1,resto:integer;

FUNCTION inversion(i:integer):integer;
begin
i:=0;

while n1 <> 0 do
begin
resto:=n1 mod 10;
n1:= n1 div 10;
i:=i*10 + resto;
end;
end;

BEGIN
writeln('ingrese un numero');
readln(n1);
writeln(inversion(n1));

if (n1 = inversion(n1)) then
writeln('el numero es capicua')
else
writeln('el numero no es capicua');
END.




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)