![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Limitar un single a dos decimales
Hola, mi problema es que tengo un dato de tipo single que contiene varios decimales y me gustaría limitar el número de decimales a 2, ¿ existe alguna función en delphi que te permita limitar el número de decimales ?
Gracias. ![]() |
|
#2
|
||||
|
||||
|
Hola,
¿te refieres a ver el dato con 2 decimales o a introducir el dato con 2 decimales? Si es para mostralo al usuario, prueba con FormatFloat pero si es para introducir como máximo 2 decimales, depende del control que uses para ello (tDBEdit, tDBGrid, etc), aunque siempre te quedará como último recurso el evento BeforePost del DataSet para "formatear" el valor de ese campo. Salu2. |
|
#3
|
|||
|
|||
|
Realmente lo que quiero hacer es una operacion matematica y el resultado meterlo en un array, pero quiero meterlo en el array solo con dos decimales, no necesito meterlo en ninguna base de datos.
Gracias. |
|
#4
|
||||
|
||||
|
Ok, prueba esto:
Código:
Numero_con_2_decimales := StrToFloat(FormatFloat('#.##',Numero_con_Muchos_decimales));
|
|
#5
|
||||
|
||||
|
Se me olvidó decirte que puedes crearte una función de este estilo:
Código:
function Redondear_a_2_decimales(Valor: Real): Real; begin // movemos la come decimal 2 posiciones e ignoramos los decimales restantes Valor := Round(Valor * 100); // o también Trunc(Valor*100); // recuperamos los decimales que queremos Valor := Valor / 100; Result := Valor; end; |
|
#6
|
|||
|
|||
|
no me funciona, el numero es 0,40000000592 y al ponerlo con 2 decimales me sale 0, no se si se te ocurre algo pero gracias de todas formas
|
|
#7
|
|||
|
|||
|
perdona no había visto la función, voy a probarla
|
|
#8
|
|||
|
|||
|
Ya está.
Muchas gracias |
![]() |
|
|
|