PDA

Ver la Versión Completa : Problemas en comparacion de tipos numericos


ilichhernandez
30-11-2005, 15:30:31
Hola a todos....llevo un buen rato intentando resolver esto ..... se trata de lo siguiente, tengo dos valores a y b, que estan en formato texto, o sea se ingresan por edit, estos valores pueden tomar valores enteros o flotantes (4,5 por ejemplo), he implementado el siguiente código....


try
mmin := Strtofloat(min);
finally
mmin := Strtoint(min);
end;

Try
mmax := StrtoFloat(max);
except
mmax := Strtoint(max);
end;

Try
rres := StrtoFloat(res);
except
rres := Strtoint(res);
end;


Hice un seguimiento a travez de mensajes y me di cuenta que al intentar el STRto Float se cae y dice "is not a valid floating point value", lo que entiendo es que el valor que esta tratando de convertir no es flotante pero yo se que puede ser entero o flotante ( 4 o 4.5 por ejemplo), agradeceria si alguien supiera como resolverlo....

Gracias

ilich hernandez.

delphi.com.ar
30-11-2005, 15:46:20
...

try
mmin := Strtofloat(min);
finally
mmin := Strtoint(min);
end;

...
Eso no es correcto, si mmin es del tipo Extended no esta bien que la obtengas mediante un StrToInt.
Seguramente el problema lo tienes porque el string no es un Float válido, porque el formato no es correcto, o porque tiene caracteres no numéricos.
Lo primero que te recomendaría es verificar si el signo de separación decimal que estas usando es el definido en la variable DecimalSeparator, de no ser así o bien optar por este valor, o remplazar el símbolo por este.

PD: ¿Has oído hablar del TCurrencyEdit de las RxLibs?

Saludos!