Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-01-2006
Avatar de federiconqn21
federiconqn21 federiconqn21 is offline
Miembro
 
Registrado: dic 2005
Posts: 95
Poder: 19
federiconqn21 Va por buen camino
truncar un float

Hola:quisiera saber como truncar un valor float.
por ejemplo:si tengo una base de datos,y en una tabla tengo un campo del tipo float con el valor 5,3.al recuperar ese valor me lo devuelve como 5.299999999999999999....
como hago para truncarlo a 2 decimales solamente?.
Gracias a quien pueda ayudarme
Responder Con Cita
  #2  
Antiguo 17-01-2006
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, este es uno de los temas que ya se trato bastante en el pasado un ejemplo de ello seria este enlace http://www.clubdelphi.com/foros/showthread.php?t=27232 y otro serian los varios "Temas relacionados" que aparecen al final de esta pagina.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 17-01-2006
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Si lo quieres hacer desde el motor, dependerá del motor que utilizas.
Si lo quieres hacer desde el cliente, y tienes una versión superior a Delphi 5, puedes utilizar las funciones de redondeo: RoundTo, SimpleRoundTo o truncarlo con algo como:
Código Delphi [-]
 
function SimpleTrunc(const AValue: Double; const ADigit: TRoundToRange = -2): Double;
var
  LFactor: Double;
begin
  LFactor := IntPower(10, ADigit);
  Result := Trunc(AValue / LFactor) * LFactor;
end;
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #4  
Antiguo 17-01-2006
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
A ver, se me olvidaba decirte que en algunos Post anteriores aconcejan que es mejor usar el double precision o el Numeric(15,2) que en ultimas viene a ser lo mismo.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #5  
Antiguo 17-01-2006
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Tambien debo decir que a mi me sucedio el caso que expone Federico Firenze y fue que yo usaba Delphi5 y fue precisamente a él quien le pedi el favor de que me diera "Copia" de dicha función desde Delphi7 (Muy amablemente como siempre me colaboro con el asunto, Gracias Federico) asi pues que solo la puse en una unidad global del proyecto y la verdad funciono muy bien...

Nota: Para agregar algo al mensaje de Federico Firenze...

El tipo TRoundToRange es el siguiente:

Código Delphi [-]
type
  TRoundToRange = -37..37;
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/

Última edición por jhonny fecha: 17-01-2006 a las 14:48:46.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas con float.... ilichhernandez Varios 2 20-12-2005 16:19:20
float hasta el infinito... eli.vidal Varios 2 15-11-2005 18:50:01
Problema con insert y campo float Ivanzinho SQL 4 22-06-2005 10:07:22
Problema DBExpress muy lento argami Conexión con bases de datos 4 22-06-2004 19:34:18
Campos Float en Firebird Kira SQL 7 12-02-2004 17:06:45


La franja horaria es GMT +2. Ahora son las 04:13:08.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi